प्रत्येक पैकेज, मॉड्यूल, क्लास, फ़ंक्शन और मेथड फ़ंक्शन का एक "नेमस्पेस" होता है जिसमें वेरिएबल नेम रिज़ॉल्व होते हैं। जब कोई फ़ंक्शन, मॉड्यूल या पैकेज मूल्यांकन किया जाता है (यानी, निष्पादन शुरू होता है), तो एक नेमस्पेस बनाया जाता है। इसलिए यदि आप नेमस्पेस बनाना चाहते हैं, तो आपको बस एक फ़ंक्शन कॉल करना होगा, एक ऑब्जेक्ट इंस्टेंटिएट करना होगा, एक मॉड्यूल इम्पोर्ट करना होगा या एक पैकेज इम्पोर्ट करना होगा। उदाहरण के लिए, हम Namespace नामक एक क्लास बना सकते हैं और जब आप उस क्लास का ऑब्जेक्ट बनाते हैं, तो आप मूल रूप से एक नेमस्पेस बना रहे होते हैं।
उदाहरण
इस क्लास में, आप नेमस्पेस से जोड़ने के लिए वेरिएबल नेम भी पास कर सकते हैं, उदाहरण के लिए,
class Namespace:
def __init__(self, **kwargs):
self.__dict__.update(kwargs)
args = Namespace(a=1, b='c')
print(args.a, args.b)
आउटपुट
1 c