بايثون(1)

الاسم
بايثون - لغة برمجة مفسرة، تفاعلية، وكائنية التوجه

موجز
python [ -B ] [ -b ] [ -d ] [ -E ] [ -h ] [ -i ] [ -I ]
       [ -m اسم-المنظومة ] [ -q ] [ -R ] [ -O ] [ -OO ] [ -P ] [ -s ] [ -S ] [ -u ]
       [ -v ] [ -V ] [ -W معطى ] [ -x ] [ -X خيار ] [ -? ]
       [ --check-hash-based-pycs مبدئي | دائمًا | أبدًا ]
       [ --help ] [ --help-env ] [ --help-xoptions ] [ --help-all ]
       [ -c أمر | سكربت | - ] [ معطيات ]

الوصف
بايثون هي لغة برمجة مفسرة، تفاعلية، وكائنية التوجه تجمع بين القوة الهائلة والصياغة الواضحة للغاية. لمقدمة عن البرمجة بلغة بايثون، انظر دليل بايثون التعليمي (Python Tutorial). يوثق مرجع مكتبة بايثون الأنواع المضمنة والقياسية، والثوابت، والدوال، والوحدات. أخيرًا، يصف دليل مرجع بايثون صياغة ودلالات اللغة الرئيسة بكثير من التفاصيل (ربما أكثر من اللازم). (يمكن العثور على هذه المستندات عبر INTERNET RESOURCES أدناه؛ وقد تكون مثبتة على حاسوبك أيضًا.)

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

يمكن عرض توثيق وحدات وحزم بايثون المثبتة عن طريق تشغيل برنامج pydoc.

خيارات سطر الأوامر

-B  لا تكتب ملفات .pyc عند الاستيراد. انظر أيضًا PYTHONDONTWRITEBYTECODE.

-b  إصدار تحذيرات بشأن str(bytes_instance) و str(bytearray_instance) ومقارنة bytes/bytearray بـ str. (استخدم -bb لإصدار أخطاء)

-c أمر
    حدد الأمر المراد تنفيذه (انظر القسم التالي). هذا ينهي قائمة الخيارات (الخيارات التالية تُمرر كمعاملات للأمر).

--check-hash-based-pycs mode
    يضبط كيفية تقييم بايثون لحداثة ملفات .pyc القائمة على الهاش.

-d  شغل مخرجات تنقيح المحلل (للخبراء فقط، يعتمد على خيارات التجميع).

-E  تجاهل متغيرات البيئة مثل PYTHONPATH و PYTHONHOME التي تعدل سلوك المفسر.

-h ،  -؟ ،  --help
    يطبع الاستخدام للملف التنفيذي للمترجم ثم يخرج.

--help-env
    يطبع المساعدة حول متغيرات البيئة الخاصة ببايثون ثم يخرج.

--help-xoptions
    يطبع المساعدة حول خيارات -X الخاصة بالتنفيذ ثم يخرج.

--help-all
    يطبع معلومات الاستخدام الكاملة ثم يخرج.

-i  عند تمرير سكربت كمعامل أول أو استخدام الخيار -c، يُدخل إلى الوضع التفاعلي بعد تنفيذ السكربت أو الأمر. لا يقرأ ملف $PYTHONSTARTUP. يمكن أن يكون هذا مفيدًا لفحص المتغيرات العامة أو تتبع المكدس عندما يرفع السكربت استثناءً.

-I  شغل بايثون في الوضع المعزول. يتضمن هذا أيضًا -E و -P و -s. في الوضع المعزول، لا يحتوي sys.path على دليل السكربت ولا دليل حزم الموقع الخاص بالمستخدم. تُتجاهل جميع متغيرات بيئة PYTHON* أيضًا. قد تُفرض قيود إضافية لمنع المستخدم من حقن كود خبيث.

-m اسم_الوحدة
    يبحث في sys.path عن الوحدة المسماة ويشغل ملف .py المقابل كسكربت. ينهي هذا قائمة الخيارات (تُمرر الخيارات التالية كمعاملات للوحدة).

-O  أزل عبارات assert وأي كود يعتمد على قيمة __debug__؛ وعزز اسم الملف للملفات المجمعة (bytecode) بإضافة .opt-1 قبل امتداد .pyc.

-OO قم بما يفعله -O وتخلص أيضًا من السلاسل النصية للتوثيق (docstrings)؛ غيّر اسم الملف للملفات المجمعة (bytecode) بإضافة .opt-2 قبل امتداد .pyc.

-P  لا تقم تلقائيًا بإضافة مسار قد يكون غير آمن إلى sys.path مثل المجلد الحالي أو مجلد السكريبت أو سلسلة فارغة. انظر أيضًا متغير البيئة PYTHONSAFEPATH.

-q  لا تطبع رسائل الإصدار وحقوق النشر. يتم كتم هذه الرسائل أيضًا في الوضع غير التفاعلي.

-R  شغّل عشوائية التجزئة. هذا الخيار له تأثير فقط إذا كان متغير البيئة PYTHONHASHSEED مضبوطًا على 0، بما أن عشوائية التجزئة مُمكنة مبدئيًا.

-s  لا تضف مجلد موقع المستخدم إلى sys.path.

-S  تعطيل استيراد وحدة site وتعديلات sys.path المعتمدة على الموقع التي تستلزمها. يتم أيضًا تعطيل هذه التعديلات إذا تم استيراد site صراحة لاحقًا.

-u  إجبار تدفقات stdout و stderr على أن تكون غير مخزنة (unbuffered). ليس لهذا الخيار أي تأثير على تدفق stdin.

-v  اطبع رسالة في كل مرة تهيأ فيها وحدة، موضحًا المكان (اسم الملف أو الوحدة المضمنة) الذي حُملت منه. عند إعطائه مرتين، اطبع رسالة لكل ملف يُفحص عند البحث عن وحدة. يوفر أيضًا معلومات حول تنظيف الوحدات عند الخروج.

-V ،  --version
    يطبع رقم إصدار بايثون للملف التنفيذي ثم يخرج. عند إعطائه مرتين، يطبع مزيدًا من المعلومات حول البناء.

-W معطى
    التحكم في التحذير. تطبع آلية تحذيرات بايثون رسائل التحذير إلى sys.stderr مبدئيًا. تطبق أبسط الإعدادات إجراءً معينًا دون قيد أو شرط على جميع التحذيرات الصادرة عن العملية (حتى تلك التي تُتجاهل مبدئيًا):
      -Wdefault # حذر مرة واحدة لكل موقع استدعاء
      -Werror # حول إلى استثناءات
      -Walways # حذر في كل مرة
      -Wall # مثل -Walways تمامًا
      -Wmodule # حذر مرة واحدة لكل وحدة استدعاء
      -Wonce # حذر مرة واحدة لكل عملية بايثون
      -Wignore # لا تحذر أبدًا يمكن اختصار أسماء الإجراءات كما هو مرغوب وسيقوم المفسر بحلها إلى اسم الإجراء المناسب. على سبيل المثال، -Wi هي نفس -Wignore . الشكل الكامل للمعامل هو: action:message:category:module:lineno تطابق الحقول الفارغة جميع القيم؛ ويمكن حذف الحقول الفارغة اللاحقة. على سبيل المثال -W ignore::DeprecationWarning يتجاهل كافة تحذيرات DeprecationWarning. حقل action كما شُرح أعلاه ولكنه ينطبق فقط على التحذيرات التي تطابق الحقول المتبقية. يجب أن يطابق حقل message كامل رسالة التحذير المطبوعة؛ هذا التطابق غير حساس لحالة الأحرف. يطابق حقل category فئة التحذير (مثال: "DeprecationWarning"). يجب أن يكون هذا اسم صنف؛ يختبر التطابق ما إذا كانت فئة التحذير الفعلية للرسالة هي صنف فرعي من فئة التحذير المحددة. يطابق حقل module اسم الوحدة (المؤهل بالكامل)؛ هذا التطابق حساس لحالة الأحرف. يطابق حقل lineno رقم السطر، حيث يطابق الصفر كافة أرقام الأسطر وبالتالي يكافئ رقم سطر محذوف. يمكن إعطاء خيارات -W متعددة؛ عندما يطابق تحذير أكثر من خيار، يُنفذ الإجراء الخاص بآخر خيار مطابق. تُتجاهل خيارات -W غير الصالحة (مع ذلك، تُطبع رسالة تحذير حول الخيارات غير الصالحة عند إصدار أول تحذير). يمكن أيضًا التحكم في التحذيرات باستخدام متغير البيئة PYTHONWARNINGS ومن داخل برنامج بايثون باستخدام وحدة التحذيرات. على سبيل المثال، يمكن استخدام دالة warnings.filterwarnings() لاستخدام تعبير نمطي على رسالة التحذير.

-X خيار
    اضبط خيارًا خاصًا بالتنفيذ. الخيارات التالية متاحة:

    -X cpu_count=N
        تجاوز القيمة المعادة من os.cpu_count()‎؛ -X cpu_count=default يلغي التجاوز؛ أيضًا PYTHON_CPU_COUNT

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

        •   أضف مرشح التحذير المبدئي، كـ -W default.

        •   ثبّت خطاطيف التنقيح على موجّهات الذاكرة: انظر دالة سي PyMem_SetupDebugHooks().

        •   فعّل وحدة faulthandler لتفريغ تعقب أثر بايثون (Python traceback) عند الانهيار.

        •   تفعيل وضع التنقيح asyncio.

        •   اضبط سمة dev_mode في sys.flags إلى True.

        •   مدمر io.IOBase يسجل استثناءات close().

    -X importtime
        اعرض الوقت المستغرق لكل استيراد. يعرض اسم الوحدة، والوقت التراكمي (بما في ذلك الاستيرادات المتداخلة) والوقت الذاتي (باستثناء الاستيرادات المتداخلة). لاحظ أن المخرجات قد تتعطل في التطبيقات متعددة الخيوط. الاستخدام النموذجي هو python3 -X importtime -c 'import asyncio'.

        يُفعل -X importtime=2 خرجًا إضافيًا يشير إلى وقت تحميل الوحدة المستوردة بالفعل. في مثل هذه الحالات، ستُطبع سلسلة cached في كلا عمودي الوقت.

    -X faulthandler
        فعّل faulthandler.

    -X frozen_modules=[on|off]
        ما إذا كان يجب استخدام الوحدات المجمدة أم لا. القيمة المبدئية هي "on" (أو "off" إذا كنت تُشغل بناءً محليًا).

    -X gil=[0|1]
        فعّل (1) أو عطّل (0) GIL. انظر أيضاً PYTHON_GIL. متاح فقط في البناءات التي ضُبطت بـ --disable-gil.

    -X int_max_str_digits=رقم
        حد من حجم تحويلات int<->str. يساعد هذا في تجنب هجمات حجب الخدمة عند تحليل بيانات غير موثوقة. القيمة المبدئية هي sys.int_info.default_max_str_digits. القيمة 0 تعطله.

    -X no_debug_ranges
        يعطل تضمين جداول مطابقة معلومات الموقع الإضافية (سطر النهاية، وإزاحة عمود البداية، وإزاحة عمود النهاية) لكل تعليمة في كائنات الشيفرة. هذا مفيد عندما تكون هناك رغبة في كائنات شيفرة وملفات pyc أصغر حجماً وكذلك كتم مؤشرات الموقع المرئية الإضافية عندما يعرض المفسر تتبعات الأخطاء.

    -X perf
        ادعم أداة التشكيلة "perf" في لينكس. انظر أيضاً PYTHONPERFSUPPORT=1.

    -X perf_jit
        ادعم أداة التشكيلة "perf" في لينكس مع دعم DWARF. انظر أيضاً PYTHON_PERF_JIT_SUPPORT=1.

    -X presite=MOD
        استورد هذه الوحدة قبل site. انظر أيضاً PYTHON_PRESITE. يعمل هذا فقط في بناءات التنقيح.

    -X pycache_prefix=مسار
        فعّل كتابة ملفات .pyc في شجرة موازية متجذرة في الدليل المعطى بدلاً من شجرة الشيفرة.

    -X showrefcount
        يخرج إجمالي عدد المراجع وعدد الكتل الذاكرة المستخدمةعند انتهاء البرنامج أو بعد كل عبارة في المفسر التفاعلي.يعمل هذا فقط في بناءات التنقيح

    -X tracemalloc
        ابدأ تتبع تخصيصات ذاكرة بايثون باستخدام وحدة tracemalloc. مبدئياً، يُخزن أحدث إطار فقط في تعقب أثر التتبع. استخدم -X tracemalloc=NFRAME لبدء التتبع بحد تعقب أثر قدره NFRAME من الإطارات.

    -X utf8
        يُمكّن وضع UTF-8 لواجهات نظام التشغيل، متجاوزًا الوضع المبدئي المدرك للمحلية. -X utf8=0 يعطل وضع UTF-8 صراحة (حتى لو كان سيفعل آليًا بخلاف ذلك). انظر PYTHONUTF8 لمزيد من التفاصيل.

    -X warn_default_encoding
        فعّل خيار EncodingWarning عند استخدام 'encoding=None'

-x  تخط السطر الأول من المصدر. هذا مخصص لاختراق خاص بـ DOS فقط. تحذير: ستكون أرقام الأسطر في رسائل الخطأ مزاحة بواحد!

واجهة المفسر
تشبه واجهة المفسر واجهة صدفة UNIX: عند استدعائها مع مدخل قياسي متصل بجهاز tty، فإنها تطلب الأوامر وتنفذها حتى تُقرأ نهاية الملف (EOF)؛ وعند استدعائها مع معامل اسم ملف أو مع ملف كمدخل قياسي، فإنها تقرأ وتنفذ سكربت من ذلك الملف؛ وعند استدعائها مع -c command، فإنها تنفذ جملة (أو جمل) بايثون المعطاة كـ command. هنا قد يحتوي command على جمل متعددة مفصولة بأسطر جديدة. المساحة البيضاء البادئة مهمة في جمل بايثون! في الوضع غير التفاعلي، يُحلل كامل المدخل قبل تنفيذه.

إذا توفر اسم السكربت والوسائط الإضافية التالية له، فسيتم تمريرها إلى السكربت في متغير بايثون sys.argv، وهو قائمة من السلاسل النصية (يجب عليك import sys أولاً لتتمكن من الوصول إليه). وإذا لم يُعطَ اسم سكربت، فسيكون sys.argv[0] سلسلة فارغة؛ وإذا استُخدم -c، فسيحتوي sys.argv[0] على السلسلة '-c'. لاحظ أن الخيارات التي يفسرها مفسر بايثون نفسه لا توضع في sys.argv.

في الوضع التفاعلي، المحث الرئيس هو `>>>'؛ والمحث الثاني (الذي يظهر عندما لا يكتمل الأمر) هو `...'. يمكن تغيير المحثات عن طريق التعيين لـ sys.ps1 أو sys.ps2. يخرج المفسر عندما يقرأ EOF عند محث. عند حدوث استثناء غير معالج، يُطبع تتبع المكدس وتعود السيطرة إلى المحث الرئيس؛ في الوضع غير التفاعلي، يخرج المفسر بعد طباعة تتبع المكدس. ترفع إشارة المقاطعة استثناء KeyboardInterrupt؛ لا تُلتقط إشارات UNIX الأخرى (باستثناء SIGPIPE الذي يُتجاهل أحياناً، لصالح استثناء IOError). تُكتب رسائل الخطأ إلى stderr.

الملفات والأدلة
تخضع هذه للاختلاف بناءً على اتفاقيات التثبيت المحلية؛ يعتمد ${prefix} و ${exec_prefix} على التثبيت وينبغي تفسيرهما كما في برمجيات GNU؛ وقد يكونان متماثلين. المبدئي لكليهما هو /usr/local.

${exec_prefix}/bin/python
    الموقع الموصى به للمترجم.

${prefix}/lib/python<version>
${exec_prefix}/lib/python<version>
    المواقع الموصى بها للأدلة التي تحتوي على الوحدات القياسية.

${prefix}/include/python<version>
${exec_prefix}/include/python<version>
    المواقع الموصى بها للأدلة التي تحتوي على ملفات التضمين اللازمة لتطوير توسعات بايثون وتضمين المترجم.

متغيرات البيئة

PYTHONASYNCIODEBUG
    إذا تم ضبط هذا المتغير البيئي على سلسلة غير فارغة، فسيُفعل وضع التنقيح لوحدة asyncio.

PYTHON_BASIC_REPL
    إذا ضُبط هذا المتغير على أي قيمة، فلن يحاول المفسر تحميل REPL المعتمد على بايثون والذي يتطلب curses و readline، وسيقوم بدلاً من ذلك باستخدام REPL التقليدي المعتمد على المحلل اللغوي.

PYTHONBREAKPOINT
    إذا تم ضبط هذا المتغير البيئي على 0، فسيُعطل المنقح المبدئي. ويمكن ضبطه على المستدعى (callable) للمنقح الذي تختاره.

PYTHONCOERCECLOCALE
    إذا ضُبطت على القيمة 0، فإنها تجعل تطبيق سطر أوامر بايثون الرئيس يتخطى إجبار اللغات القديمة المستندة إلى ASCII (مثل C و POSIX) على التحول إلى بديل أكثر قدرة يعتمد على UTF-8.

PYTHON_COLORS
    إذا ضُبط هذا المتغير على 1، فسيقوم المفسر بتلوين أنواع مختلفة من المخرجات. الضبط على 0 يعطل هذا السلوك.

PYTHON_CPU_COUNT
    إذا ضُبط هذا المتغير على عدد صحيح موجب، فإنه يتجاوز القيم المعادة من os.cpu_count و os.process_cpu_count.

    انظر أيضًا خيار -X cpu_count.

PYTHONDEBUG
    إذا ضُبط هذا على سلسلة نصية غير فارغة، فإنه يعادل تحديد الخيار -d. وإذا ضُبط على عدد صحيح، فإنه يعادل تحديد -d عدة مرات.

PYTHONEXECUTABLE
    إذا تم ضبط هذا المتغير البيئي، فسيُضبط sys.argv[0] على قيمته بدلاً من القيمة التي يتم الحصول عليها عبر زمن تشغيل C. يعمل هذا فقط في نظام Mac OS X.

PYTHONFAULTHANDLER
    إذا تم ضبط هذا المتغير البيئي على سلسلة غير فارغة، فسيُستدعى faulthandler.enable() عند بدء التشغيل: يُثبت معالج لإشارات SIGSEGV و SIGFPE و SIGABRT و SIGBUS و SIGILL لتفريغ تتبع بايثون.

    هذا يكافئ الخيار -X faulthandler.

PYTHON_FROZEN_MODULES
    إذا ضُبط هذا المتغير على on أو off، فإنه يحدد ما إذا كان سيتم تجاهل الوحدات المجمدة بواسطة آلية الاستيراد أم لا. القيمة on تعني أنه سيتم استيرادها و off تعني تجاهلها. القيمة المبدئية هي on للبناءات غير المخصصة للتنقيح (الحالة العادية) و off لبناءات التنقيح.

    انظر أيضًا خيار -X frozen_modules.

PYTHON_GIL
    إذا ضُبط هذا المتغير على 1، سيُفرض قفل المفسر العام (GIL). الضبط على 0 يفرض إيقاف GIL. متاح فقط في البناءات التي تم ضبطها بـ --disable-gil.

    هذا يعادل الخيار -X gil.

PYTHON_HISTORY
    يمكن استخدام متغير البيئة هذا لضبط موقع ملف التأريخ (في يونكس، هو ~/.python_history مبدئيًا).

PYTHONNODEBUGRANGES
    إذا ضُبط هذا المتغير، فإنه يعطل تضمين جداول مطابقة معلومات الموقع الإضافية (سطر النهاية، وإزاحة عمود البداية، وإزاحة عمود النهاية) لكل تعليمة في كائنات الشيفرة. هذا مفيد عندما تكون هناك رغبة في كائنات شيفرة وملفات pyc أصغر حجماً وكذلك كتم مؤشرات الموقع المرئية الإضافية عندما يعرض المفسر تتبعات الأخطاء.

PYTHONDONTWRITEBYTECODE
    إذا ضُبط هذا على سلسلة غير فارغة، فإنه يعادل تحديد الخيار -B (عدم محاولة كتابة ملفات .pyc).

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

    هذا يعادل الخيار -X dev.

PYTHONHASHSEED
    إذا ضُبط هذا المتغير على "random"، تُستخدم قيمة عشوائية لبذر تجزئات كائنات str و bytes. إذا تم ضبط PYTHONHASHSEED على قيمة صحيحة، فسيتم استخدامها كبذرة ثابتة لتوليد hash() للأنواع التي تغطيها عشوائية التجزئة. والغرض منها هو السماح بتجزئة قابلة للتكرار، كما في الاختبارات الذاتية للمفسر نفسه، أو للسماح لمجموعة من عمليات بايثون بمشاركة قيم التجزئة. يجب أن يكون العدد الصحيح عددًا عشريًا في النطاق [0,4294967295]. تحديد القيمة 0 سيعطل عشوائية التجزئة.

PYTHONHOME
    يغير مكان مكتبات بايثون القياسية. تُبحث المكتبات مبدئياً في ‏${prefix}/lib/python<version> و ‏${exec_prefix}/lib/python<version>، حيث تُعد ${prefix} و ${exec_prefix} مجلدات تعتمد على التثبيت، وكلاهما يؤول مبدئياً إلى /usr/local. عندما يُضبط $PYTHONHOME إلى مجلد واحد، تحل قيمته محل كل من ${prefix} و ${exec_prefix}. لتحديد قيم مختلفة لهما، اضبط $PYTHONHOME إلى ${prefix}:${exec_prefix}.

PYTHONINSPECT
    إذا ضُبط هذا على سلسلة نصية غير فارغة، فإنه يعادل تحديد الخيار -i.

PYTHONINTMAXSTRDIGITS
    يحد من عدد خانات الأرقام القصوى في قيمة int عند التحويل من سلسلة نصية وعند تحويل int مرة أخرى إلى str. القيمة 0 تعطل الحد. التحويلات من أو إلى القواعد 2 و 4 و 8 و 16 و 32 لا تُحد أبداً.

    هذا يعادل الخيار -X int_max_str_digits=NUMBER.

PYTHONIOENCODING
    إذا ضُبط هذا قبل تشغيل المفسر، فإنه يتجاوز الترميز المستخدم للمدخلات/المخرجات/الأخطاء القياسية، بالصيغة اسم_الترميز:معالج_الأخطاء. جزء معالج_الأخطاء اختياري وله نفس المعنى كما في str.encode. بالنسبة للمخرجات الخطأ القياسية (stderr)، يُتجاهل جزء معالج_الأخطاء؛ وسيكون المعالج دائماً 'backslashreplace'.

PYTHONMALLOC
    اضبط مخصصات ذاكرة بايثون و/أو ثبت خطافات التنقيح. مخصصات الذاكرة المتاحة هي malloc و pymalloc. خطافات التنقيح المتاحة هي debug و malloc_debug و pymalloc_debug.

    عندما يُجمع بايثون في وضع التنقيح، يكون المبدئي هو pymalloc_debug وتُستخدم خطافات التنقيح آليًا. خلاف ذلك، المبدئي هو pymalloc.

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

    يُتجاهل هذا المتغير إذا استخدم متغير البيئة $PYTHONMALLOC لفرض مخصص malloc(3) لمكتبة C، أو إذا ضُبطت بايثون بدون دعم pymalloc.

PYTHONNOUSERSITE
    إذا ضُبط هذا على سلسلة نصية غير فارغة، فإنه يعادل تحديد الخيار -s (لا تضِف دليل موقع المستخدم إلى sys.path).

PYTHONOPTIMIZE
    إذا تم ضبط هذا على سلسلة غير فارغة، فإنه يعادل تحديد الخيار -O. وإذا تم ضبطه على عدد صحيح، فإنه يعادل تحديد -O عدة مرات.

PYTHONPATH
    يزيد مسار البحث المبدئي لملفات الوحدات. التنسيق هو نفسه المستخدم في $PATH الخاص بالصدفة: مسار دليل واحد أو أكثر مفصولة بنقطتين رأسيتين. تُتجاهل الأدلة غير الموجودة بصمت. يعتمد مسار البحث المبدئي على التثبيت، ولكنه يبدأ عمومًا بـ ${prefix}/lib/python<version> (انظر PYTHONHOME أعلاه). يُلحق مسار البحث المبدئي دائمًا بـ $PYTHONPATH. إذا أُعطي معطى سكريبت، فسيُدرج الدليل الذي يحتوي على السكريبت في المسار أمام $PYTHONPATH. يمكن التلاعب بمسار البحث من داخل برنامج بايثون عبر المتغير sys.path.

PYTHON_PERF_JIT_SUPPORT
    إذا ضُبط هذا المتغير على قيمة غير صفرية، فإنه يفعل الدعم لمحلل الأداء Linux perf بحيث يمكنه اكتشاف استدعاءات بايثون باستخدام معلومات DWARF. الضبط على 0 يعطله.

    انظر أيضًا خيار -X perf_jit.

PYTHONPERFSUPPORT
    إذا ضُبط هذا المتغير على قيمة غير صفرية، فإنه يفعل الدعم لمحلل الأداء Linux perf بحيث يمكنه اكتشاف استدعاءات بايثون. الضبط على 0 يعطله.

    انظر أيضًا خيار -X perf.

PYTHONPLATLIBDIR
    تجاوز sys.platlibdir.

PYTHONPROFILEIMPORTTIME
    إذا ضُبط متغير البيئة هذا على 1، فسيعرض بايثون (Python) الوقت الذي تستغرقه كل عملية استيراد. وإذا ضُبط على 2، فسيقوم بايثون بتضمين خرج للوحدات المستوردة التي تم تحميلها بالفعل. وهذا يعادل تماماً ضبط الخيار -X importtime في سطر الأوامر.

PYTHONPYCACHEPREFIX
    إذا ضُبط هذا، سيكتب بايثون ملفات .pyc في شجرة دليل مرآتية عند هذا المسار، بدلاً من أدلة __pycache__ داخل شجرة المصدر.

    هذا يعادل تحديد الخيار -X pycache_prefix=PATH.

PYTHONSAFEPATH
    إذا ضُبط هذا على سلسلة نصية غير فارغة، فلا تسبق آليًا مسارًا قد يكون غير آمن بـ sys.path مثل الدليل الحالي، أو دليل السكربت، أو سلسلة نصية فارغة. انظر أيضًا الخيار -P.

PYTHONSTARTUP
    إذا كان هذا اسم ملف قابل للقراءة، تُنفذ أوامر بايثون في ذلك الملف قبل عرض المحث الأول في الوضع التفاعلي. يُنفذ الملف في نفس فضاء الأسماء الذي تُنفذ فيه الأوامر التفاعلية بحيث يمكن استخدام الكائنات المعرفة أو المستوردة فيه دون تأهيل في الجلسة التفاعلية. يمكنك أيضًا تغيير المحثات sys.ps1 و sys.ps2 في هذا الملف.

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

    قيمة المتغير هي الحد الأقصى لعدد الإطارات المخزنة في تتبع أثر للأثر. على سبيل المثال، PYTHONTRACEMALLOC=1 يخزن أحدث إطار فقط.

PYTHONUNBUFFERED
    إذا ضُبط هذا على سلسلة نصية غير فارغة، فإنه يعادل تحديد الخيار -u.

PYTHONUSERBASE
    يحدد المجلد الأساسي للمستخدم، والذي يُستخدم لحساب مسار مجلد site-packages الخاص بالمستخدم ومسارات التثبيت للأمر python -m pip install --user.

PYTHONUTF8
    إذا ضُبطت على 1، فستُفعّل "وضع UTF-8" لبايثون. الضبط على 0 يعطله.

PYTHONVERBOSE
    إذا ضُبط هذا على سلسلة نصية غير فارغة، فإنه يعادل تحديد الخيار -v. وإذا ضُبط على عدد صحيح، فإنه يعادل تحديد -v عدة مرات.

PYTHONWARNDEFAULTENCODING
    إذا ضُبط متغير البيئة هذا على سلسلة غير فارغة، فسيصدر EncodingWarning عند استخدام الترميز المبدئي الخاص باللغة.

PYTHONWARNINGS
    إذا ضُبط هذا على سلسلة مفصولة بفواصل، فإنه يعادل تحديد الخيار -W لكل قيمة منفصلة.

  متغيرات وضع التنقيح
ضبط هذه المتغيرات له تأثير فقط في بناء تنقيح لبايثون، أي إذا ضُبطت بايثون بخيار البناء --with-pydebug.

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

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

PYTHON_PRESITE
    إذا ضُبط هذا المتغير على وحدة ما، فسيتم استيراد تلك الوحدة في وقت مبكر من دورة حياة المفسر، قبل تنفيذ وحدة site، وقبل إنشاء وحدة __main__. يعمل هذا فقط في بناءات التنقيح.

    هذا يعادل الخيار -X presite=module.

المؤلف
مؤسسة برمجيات بايثون: https://www.python.org/psf/

موارد الإنترنت
الموقع الإلكتروني الرئيس: https://www.python.org/
التوثيق: https://docs.python.org/
موارد المطورين: https://devguide.python.org/
التنزيلات: https://www.python.org/downloads/
مستودع الوحدات: https://pypi.org/
مجموعات الأخبار: comp.lang.python،‏ comp.lang.python.announce

الترخيص
تُوزع بايثون تحت رخصة مفتوحة المصدر. انظر ملف "LICENSE" في توزيعة مصدر بايثون للحصول على معلومات حول الشروط والأحكام للوصول إلى بايثون واستخدامها ولإخلاء المسؤولية من جميع الضمانات.

ترجمة
تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي <zayed.alsaidi@gmail.com>

هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 (https://www.gnu.org/licenses/gpl-3.0.html) أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.

إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: kde-l10n-ar@kde.org.