الحزم Packages

21 فبراير 2019
1,006
0
0
قلب ابي
الحزم Packages
الحزمة أو الرّزمة عبارة عن مُجلّد يحتوي على وحدة أو أكثر.

عوضا عن ملفّ num.py يُمكن أن نقوم بوضع الملفات داخل مُجلّد الحزمة.

لإنشاء حزمة عليك إنشاء مُجلّد باسم الحزمة، التي سنُسميها num_package وداخل هذا المجلّد سنضع ملفيّن square .py و cube.py. كذلك يجب أن يحتوي المُجلّد على ملف باسم init__.py__ وذلك لإخبار بايثون بأنّ هذا المُجلّد عبارة عن حزمة.

لإنشاء المُجلّد والملفّات اللازمة، يُمكنك تنفيذ البرنامج التّالي:

import os

os.mkdir('num_package')

open('num_package/__init__.py', 'w').close()
open('num_package/square.py', 'w').close()
open('num_package/cube.py', 'w').close()
سنضع في ملفّ square.py الدالة الأولى:

def square(x):
return x * x
وفي ملف cube.py الدالة الثانية:

def cube(x):
return x * x * x
وسنترك الملفّ init__.py__ فارغا.

استيراد الحزمة
يُمكنك استيراد الحزمة كاملة كالتّالي:

import num_package
أو يُمكنك استيراد كل وحدة على حدة.

import num_package.square
import num_package.cube
بعد الاستيراد، يُمكن الوصول إلى الدوال كالتالي:

>>> num_package.square.square(3)
9
>>> num_package.cube.cube(3)
27
يُمكن كذلك وضع إختصار للوحدة وذلك لاختصار الوصول إلى الدوال، فقط ألحق سطر الاستيراد بكلمة as وبعدها أعطها اسما مُختصرا.

import num_package.square as sqr
ستستطيع الآن الوصول إلى الدالة بكتابة شيفرة أقل:

sqr.square(3)
يُمكن كذلك استخدام جملة from .. import.

from num_package.square import square as sqr
sqr(3)
تمارين
التمرين 1
استعمل وحدة time لإنشاء ساعة بسيطة تطبع الوقت الحالي كل ثانية.

التمرين 2
أنشئ المُجلدات التّالية (10 مُجلّدات) باستخدام لغة بايثون:

Folder1
Folder2
Folder3
.
.
Folder10
ملاحظة: استخدام حلقة تكرار لإنجاز الأمر.

التمرين 3
أعد تسمية المُجلّدات التي أنشأتها في التّمرين 2 بإضافة العدد واحد لنهاية كل مُجلّد، أي أنّ المُجلّد Folder1 يتغيّر اسمه إلى Folder2 وهكذا إلى أن تصل إلى المُجلّد العاشر Folder11.

التمرين 4
استعمل وحدة Sys لإنشاء آلة حاسبة بسيطة، يُمكن استخدامها كالتّالي:

python calc.py 3 + 4
=> 7

python calc.py 10 - 4
=> 6
ما التالي؟
وصلنا أخيرا إلى نهاية هذه السّلسلة التي تشرح أساسيات اللغة، فهنيئا لك على صبرك وهنيئا لك على إضافة لغة بايثون كمهارة أخرى إلى قائمة مهاراتك، ستتمكّن الآن من برمجة برامج ذات وظائف مُتعدّدة ومُعقّدة، وتستطيع قراءة وفهم بعض الشيفرات المُتواجدة على موقع Github.

إنّ ما يجعل بايثون لغة شهيرة هي مكتباتها التي تتعدّى الآلاف في شتى المجالات، لذا فالحديث عن لغة بايثون لا يمكن أن ينتهي هنا.

يُمكنك اختيار مكتبة أو إطار عمل لتعلّم تطوير الويب (Flask, Bottle, Django)، تطبيقات سطح المكتب (Python Qt, Python Gtk, TkInter, Kivy)، أو حتى مُعالجة الصّور بمكتبة OpenCV، وغيرها الكثير.