View Categories

2.1. استدعاء مترجم بايثون

2 دقيقة

2.1. استدعاء مترجم بايثون #

عادةً ما يتم تثبيت مترجم Python كـ “/usr/local/bin/python3.9” على تلك الأجهزة التي يتوفر بها ؛ وضع “/ usr / local / bin” في مسار بحث غلاف Unix الخاص بك يجعله

من الممكن أن تبدأ بكتابة الأمر:

python3.9

على shell.

نظرًا لأن اختيار الدليل حيث يعيش المترجم الفوري هو خيار التثبيت، فمن الممكن وجود أماكن أخرى ؛ تحقق مع معلم Python المحلي أو مسؤول النظام.

(على سبيل المثال، /usr/local/python هو موقع بديل شائع).

على الأجهزة التي تعمل بنظام Windows حيث قمت بتثبيت Python من Microsoft Store، سيكون الأمر “python3.9” متاحًا. إذا كان لديك مشغل py.exe مثبتًا، فيمكنك استخدام الأمر “py”. انظر: إعداد متغيرات البيئة لطرق أخرى لتشغيل بايثون.

تؤدي كتابة حرف نهاية الملف (“Control-D” في نظام التشغيل Unix، و “Control-Z” في نظام التشغيل Windows) في الموجه الأساسي إلى خروج المترجم من حالة الخروج الصفرية. إذا لم يفلح ذلك، يمكنك الخروج من المترجم عن طريق كتابة الأمر التالي: “quit ()”.

تتضمن ميزات تحرير سطر المترجم الفوري التحرير التفاعلي واستبدال السجل وإكمال التعليمات البرمجية على الأنظمة التي تدعم مكتبة GNU Readline. ربما يكون أسرع فحص لمعرفة ما إذا كان تحرير سطر الأوامر مدعومًا هو كتابة “Control-P” في أول موجه Python الذي تحصل عليه. إذا كانت تصدر صوتًا، فهذا يعني أن لديك تحرير سطر أوامر ؛ راجع الملحق تحرير الإدخال التفاعلي واستبدال المحفوظات للحصول على مقدمة حول المفاتيح. إذا لم يحدث شيء، أو إذا تم تكرار “^ P”، فإن تحرير سطر الأوامر غير متاح ؛ ستتمكن فقط من استخدام مسافة للخلف لإزالة الأحرف من السطر الحالي.

يعمل المترجم الشفهي إلى حد ما مثل غلاف Unix: عندما يتم استدعاؤه بإدخال قياسي متصل بجهاز tty، فإنه يقرأ الأوامر وينفذها بشكل تفاعلي ؛ عند استدعائه باستخدام وسيطة اسم الملف أو باستخدام ملف كمدخل قياسي، فإنه يقرأ وينفذ * نصًا * من هذا الملف.

الطريقة الثانية لبدء المترجم هي “python -c command [arg] …”، والذي ينفذ العبارة (العبارات) في * الأمر *، على غرار خيار “-c” الخاص بالصدفة. نظرًا لأن عبارات Python تحتوي غالبًا على مسافات أو أحرف أخرى خاصة بالصدفة، يُنصح عادةً باقتباس * الأمر * بالكامل مع علامات اقتباس مفردة.

بعض وحدات بايثون مفيدة أيضًا كنصوص. يمكن استدعاء هذه باستخدام “python -m module [arg] …”، والتي تنفذ الملف المصدر لـ * module * كما لو كنت قد كتبت اسمها بالكامل في سطر الأوامر.

عند استخدام ملف نصي، من المفيد أحيانًا أن تكون قادرًا على تشغيل البرنامج النصي والدخول في الوضع التفاعلي بعد ذلك. يمكن القيام بذلك بتمرير “-i” قبل النص.

يتم وصف جميع خيارات سطر الأوامر في سطر الأوامر والبيئة.

2.1.1. تمرير الحجة #

عندما يعرف المترجم، يتم تحويل اسم البرنامج النصي والوسيطات الإضافية بعد ذلك إلى قائمة من السلاسل ويتم تخصيصها للمتغير “argv” في الوحدة النمطية “sys”.

يمكنك الوصول إلى هذه القائمة بتنفيذ “استيراد النظام”.

طول القائمة واحد على الأقل؛ في حالة عدم وجود نص برمجي وعدم وجود وسيطات، تكون “sys.argv [0]” سلسلة فارغة.

عندما يتم إعطاء اسم البرنامج النصي كـ “- ‘” (بمعنى الإدخال القياسي)، يتم تعيين “sys.argv [0]” على “” – “”. عند استخدام “-c” * command *، يتم تعيين “sys.argv [0]” على “‘-c'”.

عند استخدام “-m” * module *، يتم تعيين “sys.argv [0]” على الاسم الكامل للوحدة النمطية الموجودة.

الخيارات التي تم العثور عليها بعد “-c” * command * أو “-m” * module * لا يتم استهلاكها بواسطة معالجة خيار مترجم Python ولكن تُترك في “sys.argv” للأمر أو الوحدة النمطية للتعامل معها.

2.1.2. الوضع التفاعلي #

عندما تتم قراءة الأوامر من tty، يقال أن المترجم الفوري في * الوضع التفاعلي *.

في هذا الوضع، فإنه يطالب بالأمر التالي مع * الموجه الأساسي *، عادة ثلاث علامات أكبر من (“>>>”) ؛ بالنسبة للأسطر التكميلية، فإنه يطالبك باستخدام * الموجه الثانوي *، افتراضيًا ثلاث نقاط (“…”).

يقوم المترجم الفوري بطباعة رسالة ترحيب توضح رقم إصداره وإشعار حقوق النشر قبل طباعة الموجه الأول:

$ python3.9
Python 3.9 (default, June 4 2019, 09:25:04)
[GCC 4.8.2] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 

هناك حاجة إلى خطوط المتابعة عند الدخول إلى بنية متعددة الخطوط. كمثال، ألق نظرة على عبارة “if” هذه:

>>> the_world_is_flat = True
>>> if the_world_is_flat:
...     print("Be careful not to fall off!")
...
Be careful not to fall off!

لمعرفة المزيد عن الوضع التفاعلي، انظر الوضع التفاعلي.

error: Content is protected !!
Scroll to Top