التفاعل مع بايثون

هناك طرق متعددة للتفاعل مع بايثون، وكل منها مفيد لحالات مختلفة. يمكنك استكشاف الدوال بسرعة في الوضع التفاعلي في بايثون باستخدام حلقة القراءة والتقييم والطباعة المدمجة (REPL)، أو يمكنك كتابة تطبيقات أكبر إلى ملف نصي باستخدام محرر نصوص أو بيئة تطوير متكاملة (IDE).

قبل البدء بهذا الدرس، تأكد من تثبيت بايثون سليم. بعد ذلك، حان وقت كتابة بعض أكواد بايثون!

Hello, World!

هناك عرف قديم في برمجة الكمبيوتر مفاده أن الكود الأول المكتوب بلغة تم تثبيتها حديثًا هو برنامج قصير يعرض النص Hello, World! على وحدة التحكم.

في بايثون، يتطلب تشغيل برنامج “Hello, World!” سطرًا واحدًا فقط من التعليمات البرمجية:

print("Hello, World!")

هنا، ستعرض دالة print() النص “مرحبًا بالعالم!” بين علامتي اقتباس على شاشتك. في هذا الدرس، ستستكشف عدة طرق لتنفيذ هذا الكود.

تشغيل بايثون في الوضع التفاعلي

أسرع طريقة لبدء التفاعل مع بايثون هي في بيئة حلقة القراءة والتقييم والطباعة (REPL). هذا يعني تشغيل المُفسِّر وكتابة الأوامر إليه مباشرةً.

عندما تتفاعل مع بايثون بهذه الطريقة، سوف يقوم المترجم بما يلي:

  • قراءة الأمر الذي تدخله
  • تقييم الأمر وتنفيذه
  • طباعة الناتج (إن وجد) إلى وحدة التحكم
  • العودة إلى الوراء وتكرار العملية

تستمر الجلسة التفاعلية على هذا النحو حتى تطلب من المترجم التوقف. يُعد استخدام بايثون في هذا الوضع التفاعلي طريقة رائعة لاختبار مقتطفات قصيرة من شيفرة بايثون والتعرف عليها بشكل أفضل.

عند تثبيت بايثون باستخدام مُثبِّت، تظهر في قائمة “ابدأ” مجموعة برامج باسم Python 3.x. قد يختلف الاسم باختلاف التثبيت المُختار. انقر على هذا العنصر لبدء مُفسِّر بايثون.

بدلاً من ذلك، يمكنك فتح تطبيق موجه الأوامر أو PowerShell وكتابة الأمر py لتشغيله:

PS> py

إذا لم تكن على دراية بهذا التطبيق، فيمكنك استخدام وظيفة البحث في نظام التشغيل الخاص بك للعثور عليه.

بعد الضغط على Enter، يجب أن ترى استجابة من مترجم Python مشابهة للاستجابة أدناه:

Python 3.13.0 (main, Oct 14 2024, 10:34:31) [Clang 15.0.0 (clang-1500.3.9.4)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>

إذا لم تظهر لك رسالة ” >>>“، فأنت لا تتواصل مع مُفسّر بايثون. قد يكون السبب هو عدم تثبيت بايثون أو عدم وجوده في مسار جلسة نافذة الطرفية.

إذا ظهرت لك هذه الرسالة، فأنت جاهز! باتباع الخطوات التالية، ستنفذ العبارة التي تعرض “أهلاً بالعالم!” في وحدة التحكم:

  1. تأكد من أن Python يعرض موجه  >>>، ومن وضع المؤشر بعده.
  2. اكتب الأمر print("Hello, World!") تمامًا كما هو موضح.
  3. اضغط على مفتاح الإدخال.

يجب أن تظهر استجابة المترجم في السطر التالي. يمكنك معرفة أنها ناتجة من وحدة التحكم نظرًا لغياب موجه الأوامر  >>>:

>>> print("Hello, World!")
Hello, World!
>>>

إذا كانت جلستك تشبه الجلسة السابقة، فقد نفذتَ بعض أكواد بايثون بنجاح! خصص لحظة للاحتفال!

إذا وجدتَ خطأً بدلاً من النص، فهناك خطأ ما. لا تقلق، إنها مجرد فرصة تعلّم أخرى.

إذا تلقيت رسالة خطأ، فارجع وتأكد من أنك كتبت الأمر بالضبط كما هو موضح في الإرشادات.

يمكنك القيام بأكثر من مجرد طباعة “مرحبًا بالعالم!” في الوضع التفاعلي في بايثون. جرّب قليلًا لترى كيف تُنتج الأوامر المختلفة نتائج مختلفة. ربما تكتشف أيضًا بعض الأخطاء الجديدة أثناء العملية!

للبدء، حاول ما يلي:

  • قم بإجراء عملية حسابية، مثل جمع 5 و4. ويمكنك أيضًا تجربة عمليات أخرى.
  • اعرض نصًا، مثل اسمك. تذكر وضعه بين علامتي اقتباس.

عندما تنتهي من التفاعل مع مفسر Python، يمكنك الخروج من جلسة REPL عن طريق كتابة exit() أو quit() والضغط على Enter.

بدءًا من إصدار بايثون 3.13، يمكنك أيضًا حذف الأقواس وكتابة exit أو quit فقط. مع ذلك، عند تضمين الأقواس، ستعمل الأوامر في جميع إصدارات بايثون.

يمكنك أيضًا الخروج من المترجم باستخدام اختصار لوحة المفاتيح في نظام التشغيل الخاص بك:

في نظام التشغيل Windows، يمكنك كتابة Ctrl+Z ثم الضغط على Enter.

إذا فشلت جميع الحلول الأخرى، يمكنك أيضًا إغلاق نافذة المترجم. هذا ليس الحل الأمثل، فقد لا يحفظ جلستك أو يغلق الموارد بشكل صحيح، ولكنك لن تواجه أي مشاكل إذا كنت تجري تجربة على كود “مرحبًا بالعالم!”.

يعد إدخال الأوامر في مفسر Python بشكل تفاعلي أمرًا رائعًا للاختبار السريع واستكشاف الميزات أو الدوال.

مع مرور الوقت، ومع إنشاء تطبيقات أكثر تعقيدًا، ستُطوّر برامج أطول ستحتاج إلى تعديلها وتشغيلها مرارًا وتكرارًا. لا تُعيد كتابة الكود في المُفسّر كل مرة! بل ستُنشئ ملف نصي.

تشغيل البرامج النصية لبايثون من ملف

سكربت بايثون هو سلسلة قابلة لإعادة الاستخدام من تعليمات بايثون، مدمجة في ملف. يمكنك تشغيل سكربت بتحديد اسم ملف السكربت للمترجم.

نصوص بايثون هي مجرد نصوص عادية، لذا يمكنك تعديلها باستخدام أي محرر نصوص. إذا كان لديك محرر نصوص مفضل يعمل على ملفات نصية، فسيكون استخدامه مناسبًا. أما إذا لم يكن لديك، فعادةً ما تكون المحررات التالية مُثبّتة تلقائيًا مع أنظمة التشغيل الخاصة بها:

استخدم بحث Windows للعثور على برنامج يسمى Notepad ثم افتحه.

بدلاً من ذلك، يمكنك العمل باستخدام برنامج مُصمم خصيصًا للبرمجة، والذي ستتعلم عنه لاحقًا. باستخدام أي محرر نصوص تختاره، أنشئ ملف نصي باسم hello.py يحتوي على ما يلي:

print("Hello, World!")

احفظ الملف الآن. تتبع الدليل الذي اخترته لحفظ الملف فيه.

ملاحظة: ليس من الضروري أن يكون ملف البرنامج النصي بامتداد .py. سيُشغّل مُفسّر بايثون الملف مهما كان اسمه، طالما حددتَ اسمه بشكل صحيح في سطر الأوامر.

مع ذلك، يُعدّ إضافة امتداد .py إلى ملفات بايثون أمرًا مفيدًا، إذ يُسهّل التعرف عليها. في العديد من أنظمة التشغيل الشائعة، مثل ويندوز وماك، يُتيح هذا عادةً إعداد رابط ملف مناسب، ما يُتيح لك تشغيل البرنامج النصي بمجرد النقر على أيقونته.

افتح نافذة طرفية إذا لم تكن تستخدمها بالفعل. إذا كان مجلد العمل الحالي هو نفسه مكان حفظ الملف، فيمكنك تحديد اسم الملف كمعامل سطر أوامر لمترجم بايثون:

PS> py hello.py
Hello, World!

يمكنك تشغيل البرنامج النصي حتى لو لم يكن موجودًا في مجلد العمل الحالي. ما عليك سوى تحديد المسار المؤدي إليه:

PS> py C:\Users\pyarabic\Documents\hello.py
Hello, World!

ميزة حفظ كود بايثون في ملف هي إمكانية تشغيل البرنامج النصي عدة مرات دون الحاجة إلى إعادة كتابته. كما يمكنك إجراء تعديلات على الملف ثم تشغيله مرة أخرى. إذا كنت ترغب في تطوير دوال أكبر، فإن استخدام البرنامج النصي هو الحل الأمثل.

قد يبدو تعديل نص بايثون الخاص بك باستخدام محرر النصوص المدمج في نظام التشغيل أمرًا صعبًا بعض الشيء. مع أن هناك بالتأكيد مبرمجين يستخدمون محررات النصوص المدمجة، إلا أن الكثيرين يفضلون استخدام بيئات التطوير المتكاملة (IDEs) لكتابة برامج بايثون.

استخدام بايثون في IDE

بيئة التطوير المتكاملة (IDE) هو برنامج يجمع جميع الدوال التي رأيتها حتى الآن. عادةً ما توفر بيئات التطوير المتكاملة إمكانيات REPL، بالإضافة إلى محرر يسمح لك بإنشاء وتعديل الشيفرة البرمجية، ثم إرسالها إلى المفسّر لتنفيذها.

سوف يوفر لك أي IDE جيد أيضًا مجموعة كبيرة من الميزات الإضافية الرائعة:

  • تمييز بناء الجملة: عادةً ما تقوم بيئات التطوير المتكاملة بتلوين عناصر بناء الجملة المختلفة في الكود لتسهيل قراءتها.
  • المساعدة الحساسة للسياق: يمكن لـ IDE المتقدم عرض معلومات ذات صلة من وثائق Python أو حتى إصلاحات مقترحة لأنواع شائعة من أخطاء التعليمات البرمجية.
  • إكمال التعليمات البرمجية: يمكن لبعض بيئات التطوير المتكاملة إكمال أجزاء مكتوبة جزئيًا من التعليمات البرمجية نيابةً عنك – وهي ميزة رائعة لتوفير الوقت والراحة.
  • تصحيح الأخطاء: عادةً ما تتضمن بيئات التطوير المتكاملة (IDEs) مصححات أخطاء، تُمكّنك من تشغيل الكود خطوة بخطوة وفحص بيانات البرنامج أثناء العمل. يُعد هذا الأمر بالغ الأهمية عند محاولة تحديد سبب سلوك برنامج ما بشكل غير صحيح.

تحتوي معظم تثبيتات بايثون على بيئة تطوير متكاملة أساسية تُسمى IDLE. الاسم ظاهريًا يرمز إلى بيئة التطوير والتعلم المتكاملة. ومع ذلك، فإن أحد أعضاء فرقة مونتي بايثون – التي استوحيت منها اسم لغة البرمجة المفضلة لديك – يُدعى إريك إيدل. لا يبدو هذا مصادفة!

تختلف عملية تشغيل IDLE من نظام تشغيل إلى آخر:

اذهب إلى قائمة ابدأ واختر “جميع البرامج” أو “جميع التطبيقات”. ستجد أيقونة البرنامج باسم IDLE (Python 3.x) أو ما شابه. يختلف هذا قليلاً بين إصدارات Windows المختلفة. قد تكون أيقونة IDLE في مجلد مجموعة برامج باسم Python 3.x.

يمكنك أيضًا العثور على أيقونة برنامج IDLE باستخدام بحث Windows من قائمة “ابدأ” وكتابة IDLE. انقر على الأيقونة لبدء البرنامج.

بمجرد بدء تشغيل IDLE بنجاح، يجب أن ترى نافذة بعنوان IDLE Shell 3.x.x، حيث يتوافق 3.x.x مع إصدار Python الخاص بك:

يجب أن يبدو موجه الأوامر  >>> مألوفًا. يمكنك كتابة أوامر REPL تفاعليًا، تمامًا كما كان الحال عند تشغيل المُفسِّر من نافذة وحدة التحكم. مع مراعاة التقاليد العريقة للمبرمجين، يمكنك عرض “مرحبًا بالعالم!” مرة أخرى:

يعمل المُفسِّر تقريبًا بنفس الطريقة التي كان يعمل بها عند تشغيله مباشرةً من وحدة التحكم. تُضيف واجهة IDLE ميزة عرض عناصر نحوية مختلفة بألوان مُميزة لجعل الكود أسهل قراءة.

كما يوفر مساعدةً متجاوبة مع السياق، أي أنه يُقدم لك تلميحات بناءً على ما تكتبه حاليًا. على سبيل المثال، إذا بدأت بكتابة print( ولم تُضف أي وسيطات أو أقواس إغلاق، فستظهر نافذة منبثقة صغيرة تُسمى “tooltip” لعرض معلومات مفيدة حول كيفية استخدام دالة print():

قد تبدو هذه الميزة مزعجة أو مخيفة في البداية، ولكنها قد تساعدك في كتابة الكود الخاص بك دون الحاجة إلى البحث عن التفاصيل في مكان آخر.

ميزة أخرى يوفرها IDLE هي استدعاء العبارات. إذا كتبتَ عدة عبارات، فيمكنك استدعاؤها باستخدام اختصارات لوحة المفاتيح:

يؤدي استخدام Alt+P إلى الرجوع إلى الوراء عبر العبارات التي تم تنفيذها مسبقًا، بينما يؤدي استخدام Alt+N إلى الرجوع إلى الأمام.

بمجرد مطالبة IDLE بتذكر عبارة ما، يمكنك استخدام لوحة المفاتيح لتحريرها ثم تنفيذها مرة أخرى.

يمكنك أيضًا إنشاء ملفات نصية وتشغيلها في وضع IDLE. من قائمة نافذة Shell، اختر “ملف ثم ملف جديد”. سيؤدي هذا الخيار إلى فتح نافذة تحرير إضافية. اكتب الكود الذي تريد تنفيذه:

من القائمة في تلك النافذة، اختر “ملف” ← “حفظ” أو “ملف” ← “حفظ باسم…” واحفظ الملف على القرص. ثم اختر “تشغيل” ← “تشغيل الوحدة”. سيظهر الناتج في نافذة Shell للمترجم:

بمجرد فتح النافذتين، يمكنك التبديل بين نافذتين، حيث تُحرّر الكود في نافذة واحدة أثناء تشغيله، وتُعرض المخرجات في الأخرى. قد لا يكون ذلك واضحًا للوهلة الأولى، إلا أن IDLE لا يقتصر على عرض مخرجات البرنامج.

عند اختيار “تشغيل الوحدة”، يُشغّل IDLE ملف البرنامج النصي في الوضع التفاعلي، وينقلك إلى بيئة REPL. سيُنفّذ جميع الشيفرة البرمجية في ملفك أولًا، ثم يسمح لك بمواصلة التفاعل معها. بهذه الطريقة، يُوفّر لك IDLE أفضل ما في الوضع التفاعلي وتحرير الملفات، ويُوفّر منصة تطوير بايثون أساسية.

يُعدّ تمييز بناء الجملة، إلى جانب تنفيذ النصوص البرمجية افتراضيًا في الوضع التفاعلي، من الميزات الفعّالة في IDLE، مما يجعله أداةً مفيدةً للبدء باستخدام بايثون. جرّب ذلك بتعريف متغير في نصك البرمجي:

greeting = "Hello, World!"
print(greeting)
print("Printing from a file.")

بهذا التغيير، عيّنتَ السلسلة النصية “!Hello, World” لاسم  greeting في السطر الأول، مما يسمح لك بالوصول إلى النص من خلاله. يمكنك فعل ذلك في السطر الثاني. إذا شغّلتَ هذا البرنامج النصي في الطرفية كما فعلتَ في قسم سابق، فسيطبع بايثون الرسالتين قبل إنهاء تنفيذ البرنامج فورًا.

عند تشغيل هذا البرنامج النصي في IDLE، سيطبع الرسائل أيضًا. مع ذلك، ستلاحظ أن IDLE يعرض موجه  >>> بعد ذلك، مما يعني أنه أدخلك إلى جلسة REPL تفاعلية تُدرك أي متغيرات عيّنتها في البرنامج النصي.

يمكنك الوصول إلى  greeting ومواصلة التفاعل معها. على سبيل المثال، يمكنك استخدام تابع السلسلة النصية .upper() على متغير  greeting. تُنشئ هذه الدالة سلسلة نصية جديدة من السلسلة التي استدعيتها عليها باستخدام الأحرف الكبيرة فقط. وبذلك، ستحصل على “مرحبًا بالعالم!” كنتيجة:

>>> greeting.upper()
'HELLO, WORLD!'

ضمن جلسة REPL التفاعلية في IDLE، يمكنك مواصلة العمل على الكود الذي حددته في نصك. هذا يمنحك حرية استكشاف الخطوات التالية الممكنة وتجربة أساليب مختلفة.

وفي الوقت نفسه، يمكنك إنشاء أكواد أكثر تعقيدًا بشكل تدريجي عن طريق تحرير البرنامج النصي بسرعة لحفظ أي من أكواد التعليمات البرمجية التي تريد الاحتفاظ بها.

مع أن IDLE ليس سوى بيئة تطوير متكاملة أساسية، إلا أنه يدعم العديد من الوظائف، بما في ذلك إكمال الشيفرة البرمجية وتنسيقها وتصحيح الأخطاء. تساعد هذه الأدوات على سد الفجوة بين المفاهيم والشيفرة البرمجية، مما يتيح لك التركيز بشكل أكبر على تعلم أساسيات البرمجة دون الانغماس في عمليات الإعداد المعقدة أو الأخطاء التي يصعب اكتشافها.

هناك العديد من البرامج الأخرى التي يمكنك استخدامها لتطوير بايثون، وينتقل معظم المبرمجين إلى بيئات تطوير متكاملة أكثر قوة أثناء مسيرتهم البرمجية. من أشهر بيئات التطوير المتكاملة لتطوير بايثون VS Code وPyCharm.

يمكن لبيئات التطوير المتكاملة (IDEs) الأقوى أيضًا تبسيط تنظيم المشاريع من خلال توفير عروض منظمة لملفات التعليمات البرمجية والمجلدات والأصول. يتيح لك هذا التنظيم فهمًا بصريًا لكيفية اتصال وتفاعل الملفات المختلفة في مشروع كبير.

مع استمرار رحلتك كمطور بايثون، ستجد على الأرجح بيئة تطوير متكاملة احترافية مفضلة لديك تقضي وقتًا طويلاً في استخدامها لتطوير برامج بايثون. ومع ذلك، إذا كنت في بداية تعلم بايثون، فقد ترغب في استكشاف أدوات إضافية تجعل تعلمك أكثر تفاعلية وسهولة.

التفاعل مع بايثون باستخدام أدوات أخرى

هناك خياران شائعان للتفاعل مع Python خارج الخيارات التي نظرت إليها بالفعل وهما Jupyter Notebook ومترجمو Python عبر الإنترنت.

Jupyter Notebook هي أداة قائمة على المتصفح، تتيح لك دمج الأكواد والتصورات والنصوص في مستند تفاعلي واحد. صُممت في الأصل لعلم البيانات، واكتسبت شعبية واسعة في العديد من المجالات بفضل كفاءتها العالية في إجراء التجارب وتوثيق ومشاركة الأعمال بتنسيق سهل الوصول.

يعد Jupyter Notebook مفيدًا بشكل خاص للمبتدئين لأنه يسمح لك بتشغيل أجزاء صغيرة من التعليمات البرمجية، تسمى الخلايا، ورؤية النتيجة على الفور.

عند فتح Jupyter Notebook، سترى خلايا فارغة لإدخال شيفرة بايثون. يمكنك تشغيل كل خلية على حدة لعرض النتيجة أسفلها مباشرةً. يساعدك هذا الإعداد على تجربة أفكار جديدة، واستكشاف دوال بايثون المختلفة، ومعرفة تأثير تغييراتك على المخرجات دون الحاجة إلى تشغيل نص برمجي كامل.

يمكنك إدخال الكود في خلية، ثم تشغيلها بالضغط على Shift+Enter. سيظهر الناتج أسفل الخلية مباشرةً.

لإنشاء مزيج من الشروحات والأكواد البرمجية، يمكنك إضافة خلايا Markdown. تتيح لك هذه الخلايا كتابة نص منسق لوصف الغرض من كل قسم من الكود، وإضافة سياق، أو تقديم ملاحظات حول كيفية عمل الكود. هذا المزيج من النص والأكواد البرمجية يجعل Jupyter Notebook موردًا قيّمًا لتعلم بايثون خطوة بخطوة أو لعرض مشروع مع توثيق كامل.

ملاحظة: يُخزّن Jupyter جميع كائنات التعليمات البرمجية في حالة مشتركة، مما يعني أن تشغيل الخلايا خارج الترتيب قد يُؤدي إلى نتائج غير متوقعة. لتجنب الارتباك، يُفضّل عادةً تشغيل الخلايا بالتسلسل من الأعلى إلى الأسفل.

مُفسِّر بايثون عبر الإنترنت هو منصة تُتيح لك كتابة وتشغيل أكواد بايثون على موقع ويب. هذه المُفسِّرات مثالية إذا كنت لا ترغب في تثبيت بايثون على جهاز الكمبيوتر الخاص بك ولكنك لا تزال ترغب في بدء البرمجة. باستخدام مُفسِّر بايثون عبر الإنترنت، يمكنك البدء بتجربة بايثون في ثوانٍ، بمجرد زيارة موقع ويب.

يمكن للمترجمين الفوريين عبر الإنترنت ودفتر Jupyter أن يُخفّضا جهد مشاركة الكود. غالبًا ما تدعم المنصات الإلكترونية مشاركة مشروعك عبر رابط، مما يُسهّل عليك عرض عملك للآخرين أو التعاون مع أصدقائك. يمكنك تحميل ملف دفتر Jupyter مباشرةً إلى GitHub، الذي يُقدّمه افتراضيًا، أو يمكنك مشاركته على Jupyter Hub.

في هذا الدرس، استكشفتَ طرقًا مختلفة للتفاعل مع بايثون، بدءًا من استخدام بيئة REPL التفاعلية، وصولًا إلى تشغيل البرامج النصية واستخدام بيئات التطوير المتكاملة (IDEs). كما تعرّفتَ على أدوات أخرى للتفاعل مع بايثون، وتحديدًا Jupyter Notebook ومفسّرات بايثون عبر الإنترنت.

إن معرفة الطرق المختلفة للتفاعل مع بايثون تُمكّنك من اختيار الأداة الأنسب لمهمتك المحددة. سواء كنت تختبر أجزاءً من الشيفرة البرمجية أو تُطوّر تطبيقات مُعقّدة، فإن معرفة كيفية استخدام هذه الأدوات بفعالية تُحسّن إنتاجيتك وتجربة البرمجة لديك.

الآن، بعد أن تعرفت على هذه الخيارات واكتسبت خبرة في استخدامها، يمكنك اختيار أفضل طريقة للتفاعل مع بايثون لأي مشروع بثقة. بهذه الطريقة، ستضمن تطوير شيفرة بايثون بكفاءة مع استمرارك في التعلم والممارسة.


اكتشاف المزيد من بايثون العربي

اشترك للحصول على أحدث التدوينات المرسلة إلى بريدك الإلكتروني.

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

Scroll to Top

اكتشاف المزيد من بايثون العربي

اشترك الآن للاستمرار في القراءة والحصول على حق الوصول إلى الأرشيف الكامل.

Continue reading