اذهب إلى المحتوى

السؤال

Recommended Posts

  • 1
نشر

تقدم بايثون عدة طرق للوصول إلى متغيرات البيئة:

  1. إستخدام مكتبة os كالتالي:
    import os
    print(os.environ['USERPROFILE'])	# Output: C:\Users\sameh

    ولعرض كل متغيرات البيئة يمكنك طباعة القائمة بالكامل كالتالي:

    print(os.environ)

    كما يمكنك أن تستعمل التابع get للحصول على قيمة متغير بيئة معين، وفي حالة عدم وجودة سوف يتنم إعادة None بدلًا من إطلاق خطأ KeyError:

    print(os.environ.get('NOT_EXISTS'))	# None

     

  2. يمكنك أن تستعمل الدالة getenv من مكتبة os للحصول على قيمة متغير بيئة أيضًا كالتالي:
    import os
    print(os.getenv('KEY_EXIST', default_value))

    في حالة عدم وجود متغير البيئة سوف يتم إعادة القيمة الإفتراضية default_value

 

وللتحقق من وجود متغير بيئة معين يمكنك أن تستخدم المعامل in كالتالي:

'USERPROFILE' in os.environ	# True or False

 

  • 0
نشر

من خلال  os.environ يمكنك الحصول على متغيرات البيئة من خلال

import os
print(os.environ['VARIABLE_NAME'])

ويمكنك التحقق من وجود المتغير من خلال الشرط التالي

'VARIABLE_NAME' in os.environ

حيث سيتم إرجاع true أو false على حسب وجود المتغير

  • 0
نشر

كما تم شرحه فيمكنك استخدام الوحدة os والحصول على متغيرات البيئة من environ ولكن هنا لديك الوصول الى متغيرات البيئة الخاصة بالنظام

اما إذا اردت إنشاء متغيرات بيئة محلية تكون خاصة بمشروع بعينه فيمكنك استخدام حزمة python-decouple وتثبيتها

$ pip install python-decouple

وبعد تثبيت الحزمة قم بإنشاء ملف وقم بتسميته ب env. وضعه في المجلد الرئيسي أو جذر المشروع

ومن ثم قم بإضافة متغيرات البيئة فيه على سبيل المثال

USER=alex
KEY=hfy92kadHgkk29fahjsu3j922v9sjwaucahf

ملاحظة : تذكر إذا كنت تستخدم git فقم بوضع الملف في gitignore.

والآن للوصول لمتغيرات البيئة المحلية في بايثون كالآتي

from decouple import config

# الحصول المتغير المحلي USER
API_USERNAME = config('USER')
# الحصول على المتغير المحلي KEY
API_KEY = config('KEY')

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...