البدء
أهداف التعلّم
بعد إتمام هذا القسم
- ستصبح قد كتبت ونفّذت برنامجك الأول بلغة Python
- ستكون على معرفة بكيفية استخدام الأمر print
- ستكون قادرًا على استخدام البرمجة لإجراء عمليات حسابية
تتكون برامج الحاسوب من أوامر (commands)، كل أمر يوجّه الحاسوب للقيام بإجراء ما. وينفّذ الحاسوب هذه الأوامر واحدًا تلو الآخر. ويمكن استخدام الأوامر، من بين أمور أخرى، لإجراء حسابات، ولمقارنة أشياء في ذاكرة الحاسوب، ولإحداث تغييرات في طريقة عمل البرنامج، ولنقل رسائل، أو لطلب معلومات من مستخدم البرنامج.
لنبدأ البرمجة بالتعرّف على الأمر print، الذي يطبع النص. وفي هذا السياق، يعني الطبع أساسًا أن البرنامج سيُظهر نصًا ما على الشاشة.
سيطبع البرنامج التالي السطر "Hi there!":
print("Hi there!")
وعند تشغيل البرنامج، يُنتج هذا:
Hi there!
لن يعمل البرنامج إلا إذا كُتبت الشيفرة تمامًا كما هي أعلاه. فمثلًا، محاولة تشغيل الأمر print دون علامات التنصيص، على النحو التالي
print(Hi there!)
لن تطبع الرسالة، بل تتسبب بدلًا من ذلك في خطأ:
File "<stdin>", line 1
print(Hi there!)
^
SyntaxError: invalid syntax
وباختصار، إذا أردت طباعة نص، فيجب أن يكون النص كله محاطًا بعلامات تنصيص، وإلا فلن تفسّره Python تفسيرًا صحيحًا.
تمرين تفاعلي: الوجه المبتسم
اكتب برنامجًا يطبع وجهًا مبتسمًا: :-)
ملاحظة: هذا التمرين يتطلب بيئة TMC التفاعلية ولا يعمل في النسخة الثابتة.
برنامج بأوامر متعددة
الأوامر المتعددة المكتوبة تباعًا ستُنفَّذ بالترتيب من الأول إلى الأخير. فمثلًا هذا البرنامج
print("Welcome to Introduction to Programming!")
print("First we will practice using the print command.")
print("This program prints three lines of text on the screen.")
يطبع الأسطر التالية على الشاشة:
Welcome to Introduction to Programming!
First we will practice using the print command.
This program prints three lines of text on the screen.
تمرين تفاعلي: إصلاح الشيفرة: الإخوة السبعة
"Seitsemän veljestä" هي واحدة من أوائل الروايات التي كُتبت في الفنلندية على الإطلاق. وهي قصة سبعة إخوة يتامى يتعلمون كيف يجدون طريقهم في العالم (اقرأ المزيد على ويكيبيديا).
من المفترض أن يطبع هذا البرنامج أسماء الإخوة بالترتيب الأبجدي، لكنه لا يعمل بالشكل الصحيح بعد. أصلح البرنامج لكي تُطبع الأسماء بالترتيب الصحيح.
print("Simeoni")
print("Juhani")
print("Eero")
print("Lauri")
print("Aapo")
print("Tuomas")
print("Timo")
ملاحظة: هذا التمرين يتطلب بيئة TMC التفاعلية ولا يعمل في النسخة الثابتة.
تمرين تفاعلي: صف، صف، صف قاربك
اكتب برنامجًا يطبع الأسطر التالية تمامًا كما هي مكتوبة هنا، بما في ذلك علامات الترقيم:
Row, row, row your boat,
Gently down the stream.
Merrily, merrily, merrily, merrily,
Life is but a dream.
ملاحظة: هذا التمرين يتطلب بيئة TMC التفاعلية ولا يعمل في النسخة الثابتة.
العمليات الحسابية
يمكنك أيضًا وضع عمليات حسابية داخل الأمر print. وعند تشغيله سيُطبع نتيجة العملية. فمثلًا، البرنامج التالي
print(2 + 5)
print(3 * 3)
print(2 + 2 * 10)
يطبع هذه الأسطر:
7
9
22
لاحظ غياب علامات التنصيص حول العمليات الحسابية أعلاه. تُستخدم علامات التنصيص للدلالة على السلاسل النصية (strings). وفي سياق البرمجة، السلاسل النصية هي تتابعات من المحارف. ويمكن أن تتكون من حروف وأرقام وأي أنواع أخرى من المحارف، مثل علامات الترقيم. والسلاسل النصية ليست مجرد كلمات كما نفهمها عادةً، بل يمكن لسلسلة نصية واحدة أن تطول بمقدار جمل كاملة متعددة. وعادةً ما تُطبع السلاسل النصية تمامًا كما هي مكتوبة. وبذلك، فإن الأمرين التاليين ينتجان نتيجتين مختلفتين تمامًا:
print(2 + 2 * 10)
print("2 + 2 * 10")
يطبع هذا البرنامج:
22
2 + 2 * 10
وفي السطر الثاني من الشيفرة، لا تحسب Python نتيجة العملية، بل تطبع العملية نفسها كسلسلة نصية. إذاً، تُطبع السلاسل النصية كما هي مكتوبة تمامًا، دون أي إشارة إلى محتواها.
التعليقات
أي سطر يبدأ بعلامة الرقم #، المعروفة أيضًا بالهاش أو بعلامة العدد، هو تعليق. وهذا يعني أن أي نص على ذلك السطر بعد الرمز # لن يؤثر بأي شكل على طريقة عمل البرنامج. ستتجاهله Python ببساطة.
تُستخدم التعليقات لشرح طريقة عمل البرنامج، للمبرمج نفسه وللآخرين الذين يقرأون شيفرة البرنامج. ففي هذا البرنامج يشرح تعليق الحساب الذي تُجريه الشيفرة:
print("Hours in a year:")
# there are 365 days in a year and 24 hours in each day
print(365*24)
وعند تشغيل البرنامج، لن يكون التعليق مرئيًا للمستخدم:
Hours in a year:
8760
ويمكن أيضًا إضافة تعليقات قصيرة في نهاية السطر:
print("Hours in a year:")
print(365*24) # 365 days, 24 hours in each day
تمرين تفاعلي: الدقائق في السنة
اكتب برنامجًا يطبع عدد الدقائق في السنة. استخدم شيفرة Python لإجراء الحساب، كما في مثال الشيفرة السابق.
ملاحظة: هذا التمرين يتطلب بيئة TMC التفاعلية ولا يعمل في النسخة الثابتة.
تمرين تفاعلي: اطبع بعض الشيفرة
حتى الآن، على الأرجح كنت تستخدم علامات التنصيص المزدوجة
"لطباعة السلاسل النصية. وبالإضافة إلى علامات التنصيص المزدوجة، تقبل Python أيضًا علامات التنصيص المفردة'.
وهذا يفيدك إن أردت يومًا طباعة علامات التنصيص نفسها:
print('"Come right back!", shouted the police officer.')
"Come right back!", shouted the police officer.
اكتب برنامجًا يطبع ما يلي:
print("Hello there!")
ملاحظة: هذا التمرين يتطلب بيئة TMC التفاعلية ولا يعمل في النسخة الثابتة.