دامنه‌های Python

متغیر صرف تیار کردہ علاقے میں استعمال کیا جاسکتا ہے، اس کو دائرہ کار کہا جاتا ہے。

محلی دائرہ کار

کوئی فانکشن کے اندر تیار کردہ متغیر اس فانکشن کے محلی دائرہ کار میں تعلق رکھتا ہے، اور صرف اس فانکشن کے اندر استعمال کیا جاسکتا ہے。

مثال

کوئی فانکشن کے اندر تیار کردہ متغیر اس فانکشن کے اندر استعمال کیا جاسکتا ہے:

دیف مایفنک():
  ایکس = 100
  پرنٹ(ایکس)
مایفنک()

مثال چلانا

فنکشن کے اندر فنکشن

مثال میں دیکھا جاسکتا ہے کہ متغیر ایکس فنکشن کے باہر دستیاب نہیں ہوتی، لیکن فنکشن کے اندر کسی بھی فنکشن کے لئے دستیاب ہوتی ہے:

مثال

ایک فنکشن کے اندر ایک دوسرے فنکشن سے مقامی متغیر تک رسائی حاصل کی جاسکتی ہے:

دیف مایفنک():
  ایکس = 100
  دیف مایاینر فنکشن():
    پرنٹ(ایکس)
  مایاینر فنکشن()
مایفنک()

مثال چلانا

عالمی دائرہ

پائینگین کوئنٹائیٹی میں بنائی گئی متغیر عالمی متغیر ہوتی ہے، جو عالمی دائرہ میں دستیاب ہوتی ہے۔

عالمی متغیر کسی بھی دائرہ (عالمی اور مقامی) میں دستیاب ہوتی ہے۔

مثال

فنکشن کے باہر بنائی گئی متغیر عالمی متغیر ہوتی ہے، کسی بھی شخص کو استعمال کی جاسکتی ہے:

ایکس = 100
دیف مایفنک():
  پرنٹ(ایکس)
مایفنک()
پرنٹ(ایکس)

مثال چلانا

نام متغیر

اگر آپ نے فنکشن کے اندر اور باہر میں نام کا متغیر استعمال کیا تو، پائینگین نے ان کو دو متغیر کے طور پر تسلیم کیا جائے گا، ایک عالمی دائرہ میں دستیاب ہوگا (فنکشن کے باہر)، دوسرا مقامی دائرہ میں دستیاب ہوگا (فنکشن کے اندر):

مثال

یہ فنکشن مقامی متغیر ایکس کو پرنٹ کرے گا، بعد میں کد بھی عالمی متغیر ایکس کو پرنٹ کرے گا:

ایکس = 100
دیف مایفنک():
  ایکس = 200
  پرنٹ(ایکس)
مایفنک()
پرنٹ(ایکس)

مثال چلانا

گلوبل کلئی وار

اگر آپ نے عالمی متغیر بنانا چاہتے ہیں لیکن اس کو مقامی دائرہ میں رکھنا چاہتے ہیں تو، پلائیگلوبل کلئی وار کا استعمال کریں۔

گلوبل کلئی وار متغیر کو عالمی متغیر بناتی ہے۔

مثال

اگر آپ نے پلائیگلوبل کلئی وار کا استعمال کیا تو، اس متغیر کو عالمی دائرہ کا حصہ بنادیا جاتا ہے:

دیف مایفنک():
  گلوبل ایکس
  ایکس = 100
مایفنک()
پرنٹ(ایکس)

مثال چلانا

ایک دوسرے، اگر آپ نے فنکشن کے اندر گلوبل متغیر بدلنا چاہتے ہیں تو، بھی پلائیگلوبل کلئی وار کا استعمال کریں۔

مثال

اگر آپ نے فنکشن کے اندر گلوبل متغیر کا اعداد و شمار بدلنا چاہتے ہیں تو، پلائیگلوبل کلئی وار کا استعمال کریں اور اس متغیر کو رجوع کریں:

ایکس = 100
دیف مایفنک():
  گلوبل ایکس
  ایکس = 200
مایفنک()
پرنٹ(ایکس)

مثال چلانا