2017-11-30 18 views
6

पहली पंक्ति एक बार अजगर 2.7 दुभाषिया विंडोज पर शुरू कर दिया गया है:अंतिम कमांड चर "_" dir() में क्यों नहीं दिखता है?

>>> dir() 
['__builtins__', '__doc__', '__name__', '__package__'] 

dir() आदेश प्रवेश करने के बाद, विशेष चर _ परिभाषित किया जाना चाहिए:

>>> _ 
['__builtins__', '__doc__', '__name__', '__package__'] 

लेकिन, _ प्रवेश करने के बाद भी, यह करता है जब मैं dir() का उपयोग कर इंटरैक्टिव नेमस्पेस में सभी नामों को सूचीबद्ध करने का प्रयास करता हूं तो प्रदर्शित नहीं होता:

>>> dir() 
['__builtins__', '__doc__', '__name__', '__package__'] 

दुभाषिया इस चर को कैसे पहचानता है यदि यह दुभाषिया के नामस्थान में नहीं है?

उत्तर

10

_ अंतर्निहित नामस्थान में जाता है, न कि ग्लोबल्स।

>>> import __builtin__ 
>>> 3 
3 
>>> __builtin__._ 
3 

dir() doesn't list built-ins:

तर्क के बिना, वर्तमान स्थानीय दायरे में नामों की सूची वापस जाएँ।

निर्मित गुंजाइश एक आप में dir() चला रहे हैं, उससे भिन्न गुंजाइश है।

संबंधित मुद्दे