Python में global इंस्ट्रक्शन
मान लीजिए कि हमारे पास एक बाहरी ग्लोबल
वेरिएबल i है। साथ ही एक फ़ंक्शन
func है, जो इस वेरिएबल में
एक जोड़ता है:
i = 0
def func():
i += 1 # एरर दिखाएगा
return i
कोड एक्सेक्यूट होने के बाद एक एरर आएगी,
क्योंकि बाहरी कोड में डिक्लेयर्ड ग्लोबल
i और लोकल i, जिसमें
1 जोड़ा जा रहा है, के बीच कंफ्लिक्ट हो रहा है,
लेकिन वेरिएबल अभी तक डिक्लेयर्ड नहीं हुई है। इस
प्रॉब्लम को ठीक करने और फ़ंक्शन को विशेष रूप से
ग्लोबल वेरिएबल के साथ काम करने के लिए सेट करने के लिए,
global इंस्ट्रक्शन का उपयोग करना होगा। यह इंस्ट्रक्शन
एक डिक्लेरेशन है, जो उस करंट कोड ब्लॉक के लिए
एक्सेक्यूट होता है, जिसमें इसे डिफाइन किया गया है।
आइए पिछले उदाहरण को फिर से लिखें, फ़ंक्शन के बॉडी में
global डिक्लेयर करके:
def func():
global i
i += 1
return i
print(func()) # 1 दिखाएगा
निम्नलिखित कोड में किसी प्रोग्रामर ने गलती कर दी है:
num = 4
def func():
num *= 2
return num
print(func())
इस कोड में क्या गलत है? कोड ऑथर की गलती ढूंढें और ठीक करें।
निम्नलिखित कोड में किसी प्रोग्रामर ने गलती कर दी है:
num = 10
def func():
num -= 3
return i
print(func())
इस कोड में क्या गलत है? कोड ऑथर की गलती ढूंढें और ठीक करें।