कई संसाधनों में मैंने पाया "गुंजाइश" और "नेमस्पेस" का उपयोग एक-दूसरे से किया जाता है, जो अलग-अलग चीजों का मतलब होने के बाद से थोड़ा भ्रमित लगता है।
- स्कोप कोड के क्षेत्र को परिभाषित करता है जहां एक नाम उपलब्ध है।
- लेगबी नियम परिभाषित करता है जिस तरह से नामों को देखा जाता है।
- नेमस्पेस एक ऐसी जगह है जहाँ आप नामों को देखते हैं।
फिर मैंने पढ़ा:
- "नाम एक नेमस्पेस से बंधे हैं, जहां उन्हें सौंपा गया है ..." (जो मेरा मानना है कि लेक्सिकल स्कोपिंग में स्कोप्स के साथ सौदा है)।
- "फ़ंक्शंस आपके कार्यक्रमों में एक अतिरिक्त नेमस्पेस लेयर जोड़ते हैं" [ रेफ। ] (क्या वे एक अतिरिक्त स्थानीय गुंजाइश नहीं जोड़ते हैं?)
- "फंक्शन डेफिनिशन के अंदर सौंपे गए सभी नामों को लोकल स्कोप (फंक्शन कॉल से जुड़े नेमस्पेस) में डाल दिया जाता है।"
- "ग्लोबल स्कोप- यानी, एक नेमस्पेस जिसमें मॉड्यूल फ़ाइल के शीर्ष स्तर पर बनाए गए (असाइन किए गए) रहते हैं।"
* उद्धरणों के सभी अजगर 5 वें संस्करण ch17 सीखने से हैं
पायथन में नाम स्थान जिस तरह से स्कोप लागू किए गए हैं? क्या ये एक ही चीज हैं? क्या कोई मुझे बता सकता है?