قواعد ولوائح لغة python

حتى الدرس السابق تعلمنا كيفية تثبيت وتنفيذ البرامج باستخدام لغة البايسون. وفي هذا الدرس سوف لقي نظرة على كيفية تنفيذ وتركيبة السطور البرمجية للبايسون. ملحوظة تطلع كلمة module على كل ملفات البايسون المختلفة والتي تحتوي على الوظائف والكلاسات المختلفة.
تركيبة السطور البرمجية
أولا نقوم بإنشاء ملف بايسون جديد ونكتب أو نلصق به السطور التالي
print('قراءة الملف')
def test():
print('تم إستدعاء دالة test')
if __name__ == '__main__':
print('مرحبا بكم في عالم البرمجة')
# print('عالم البرمجة')
test()
بعد كتابتها نقوم بحفظها في ملف باسم test02.py ونحفظه داخل مجلد التحارب
ومن ثم وبنفس الطريقة في الدرس السابق نقوم بتنفيذ هذا الملف بكتابة الأمر التالي في موجه الأوامر
python test02.py
وبعد التنفيذ تكون النتيجة على النحو التالي
قراءة الملف
مرحبا بكم في عالم البرمجة
تم إستدعاء دالة test
سوف تظهر لنا نتائج التنفيذ حسب الترتيب السابق, فدعونا نشرح هذه السطور البرمجية
كيفية كتابة المسافات والتعليقات
أولا في السطر 3 قمنا بكتابة دالة
وفي السطر 6 قمنا باستخدام إذا الشرطية
وسوف نتطرق لشرحهما في الدروس التالية إنشاء الله
عند إستدعاء هذه الدالة يتم إظهار رسالة تم إستدعاء دالة test, وهي مثال بسيط لكتابة الدوال وكيفية إستدعائها
وعند كتابة الدوال المختلفة واستخدام إذا الشرطية نقوم بتعيين نطاق الأوامر المراد تنفيذها والخاصة بكل بكل منهما باستخدام المسافات أو الفراغات, ويجب عدم الخلط بينهما لتجنب المشاكل البرمجية, ويفضل إستخدام 4 مسافات أو فراغ(مفتاح الحقول) لمرة واحدة
واستنادا لهذه القاعدة فإن نطاق تنفيذ دالة test هو السطر 4 فقط أما نطاق أوامر إذا الشرطية فهو من السطر 7 إلى السطر 10
وكا لاحظنا في نتائج التنفيذ السابقة لم يتم إظهار محتوى السطر 9 وهو عالم البرمجة
والسبب أننا كتبنا علامة # في بداية السطر, وعند كتابة علامة # يتم تجاهل ما بعدها حتى نهاية السطر ولا يتم تنفيذه, حتى ولو لم يكن مطابقا لقواعد ولوائح لغة البايسون, والبطع لا يتم إظهار رسالة خطأ
ما معنى __name__ وما معنى __main__
إذا الشرطية الموجودة في السطر 6 يتم تنفيذها فقط عند تنفيذ هذا الملف مباشرة, ولا يتم تنفيذها في حالة إستدعاء هذا الملف من ملف آخر, وكيفية إستدعاء الملفات سوف نتعرف عليها في الدروس التالية إنشاء الله.
والمتغير __name__ وعند تنفيذ هذا الملف مباششرة تكون قيمة هذا المتغير هي __main__ ولكن في حالة إستدعائها من ملف آخر تكون قيمته هي اسم الملف نفسه, لذا لا يتم تنفيذ هذه السطور, وتعتبر هذه السطور هي نقطة بداية تنفيذ البرنامج
ترتيب التنفيذ
وكما رأينا سابقا عند تنفيذ هذه السطور البرمجية نحصل على النتائج التالية
قراءة الملف
مرحبا بكم في عالم البرمجة
تم إستدعاء دالة test
كما هو في معظم لغات البرمجة يتم تنفيذ الملفات من أعلى إلى أسفل بالترتيب, لهذا تم إظهار قراءة الملف في البداية
وبعدها تم إظهار رسالة مرحبا بكم في عالم البرمجة, وهذا هو السطر 7 مع العلم تم تنفيذها قبل print في السطر 4 فما هو السبب. فالسبب هو أن السطر 4 يوجد داخل نطاق دالة test ولا يتم تنفيذ الدوال المختلفة قبل إستدعائها.
وفي السطر 6 قمنا بكتابة نقطة بداية التنفيذ, ولأننا قمنا بتنفيذ هذا المف مباشرة فإن قيمة المتغير __name__ تكون هي __main__, لذا يتم ما بعدها وهو رسالة مرحبا بكم في عالم البرمجة
ولأننا قمنا بكتابة علامة # في بداية السطر 8 لم يتم تنفيذه, ثم يتم إيتدعاء دالة test في السطر 9, وفي هذه اللحظة فقط يتم تنفيذ ما داخل هذه الدالة وهي رسالة تم إستدعاء دالة test
وبهذه الطريقة يتم تنفيذ البرامج على حسب من أعلى إلى أسفل إلا في بعض الحالات الخاصة ومنها وجود الدوال, والتي لا يتم تنفيذها إلا بعد الإستدعاء