%reset
आदेश आदेशों की निम्न क्रम से हर नाम हटाने करता है वर्तमान मॉड्यूल:
>>> 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
खंड हर बार में फिर से बाध्य है होता है के माध्यम से), तो उस नियंत्रण चर _
का नाम देना बेहतर हो सकता है, उदाहरण के लिए, स्पष्ट रूप से "यह विशेष है" (प्लस, इंटरैक्टिव दुभाषिया में, नाम _
को फिर से बाध्य किया जाता है, फिर भी प्रॉम्प्ट पर दर्ज की गई प्रत्येक पूर्ण अभिव्यक्ति के बाद, उस अभिव्यक्ति का मूल्य, इसलिए यह लंबे समय तक नहीं टिकेगा ;-)।
वैसे भी, एक बार आप निर्धारित किया है यह वास्तव में क्या है आप क्या करना चाहते हैं, यह मुश्किल नहीं है इस प्रयोजन के लिए एक समारोह को परिभाषित करने और अपने स्टार्ट-अप फ़ाइल में रख (यदि आप इसे केवल इंटरैक्टिव सत्र में चाहते हैं) करने के लिए या साइट-कस्टमाइज़ फ़ाइल (यदि आप इसे प्रत्येक स्क्रिप्ट में चाहते हैं)।
यह उपयोगी होगा अगर आपने अपना शीर्षक किसी चीज़ पर बदल दिया जैसे "मैं पाइथन लिपि के बीच में सभी चर कैसे साफ़ करूं?" विषय पर भावी खोजों के लिए, क्योंकि "पायथन में कमांड विंडो को पुनरारंभ कैसे करें?" वास्तव में आप जो पूछ रहे हैं उसके साथ कुछ लेना देना नहीं है। – sdolan
@sdolan बदल गया – snakile
क्या आप कोई संभावित संदर्भ प्रदान कर सकते हैं जिसमें यह समझ में आता है? –