आदेशों का निम्नलिखित क्रम वर्तमान मॉड्यूल से प्रत्येक नाम को हटा देता है :
>>> import sys
>>> sys.modules[__name__].__dict__.clear()
मुझे संदेह है कि आप वास्तव में ऐसा करना चाहते हैं, क्योंकि "हर नाम" में सभी बिल्ट-इन शामिल हैं, इसलिए इस तरह के कुल वाइप-आउट के बाद आप बहुत कुछ नहीं कर सकते हैं। याद रखें, पायथन में एक "चर" के रूप में वास्तव में ऐसी कोई बात नहीं है - देखते हैं वस्तुओं , कई प्रकार के (मॉड्यूल, काम करता है, वर्ग, संख्या, तार, ... सहित), और देखते हैं नाम , वस्तुओं के लिए बाध्य; अनुक्रम क्या करता है प्रत्येक नाम को एक मॉड्यूल से हटा दिया जाता है (यदि संबंधित वस्तुएं चली जाती हैं, तो केवल और अगर उनके लिए हर संदर्भ को हटा दिया गया है)।
हो सकता है कि आप अधिक चयनात्मक होना चाहते हैं, लेकिन यह अनुमान लगाना कठिन है कि जब तक आप अधिक विशिष्ट होना चाहते हैं, तब तक आपका क्या मतलब है। लेकिन, सिर्फ एक उदाहरण देने के लिए:
>>> import sys
>>> this = sys.modules[__name__]
>>> for n in dir():
... if n[0]!='_': delattr(this, n)
...
>>>
यह अनुक्रम अकेले उन नामों को छोड़ देता है जो निजी या जादुई होते हैं, जिसमें __builtins__विशेष नाम शामिल होता है जिसमें सभी निर्मित नाम होते हैं। इसलिए, बिल्ट-इन अभी भी काम करते हैं - उदाहरण के लिए:
>>> dir()
['__builtins__', '__doc__', '__name__', '__package__', 'n']
>>>
जैसा कि आप देखते हैं, नाम n(उस में नियंत्रण चर for) भी चारों ओर चिपकाने के लिए होता है (जैसा कि इसके forमाध्यम से हर बार खंड में फिर से बँधा होता है), इसलिए यह बेहतर होगा कि उस नियंत्रण चर को नाम दें _, उदाहरण के लिए, स्पष्ट रूप से दिखाने के लिए " विशेष "(साथ ही, इंटरएक्टिव इंटरप्रेटर में, नाम _वैसे भी हर अभिव्यक्ति के तुरंत बाद फिर से बंध जाता है, उस अभिव्यक्ति के मूल्य पर, इसलिए यह लंबे समय तक नहीं टिकेगा ;-)
वैसे भी, एक बार आप वास्तव में निर्धारित किया है कि यह क्या है आप क्या करना चाहते हैं, यह मुश्किल नहीं है इस प्रयोजन के लिए एक समारोह को परिभाषित करने और अपने स्टार्ट-अप फ़ाइल में रख (यदि आप इसे केवल इंटरैक्टिव सत्र में चाहते हैं) या साइट अनुकूलित फ़ाइल (करने के लिए अगर आप इसे हर स्क्रिप्ट में चाहते हैं)।