__builtin__
मॉड्यूल python3 में builtins
को दिया गया था।
यह परिवर्तन औसत पायथन डेवलपर के लिए भ्रम के 2 स्रोत हल करता है।
- यह
'__builtins__'
या '__builtin__'
ग्लोबल नेम स्पेस में है कि है? डर्न एस!
__builtin__
special method name या एक मॉड्यूल है? मैं नहीं बता सकता।
यह भ्रम मुख्य रूप से pep8 सम्मेलन के उल्लंघन के कारण उत्पन्न होता है। इसके अलावा, मॉड्यूल पर बहुवचन की कमी भी संचार में बाधा डालती है। इन दोनों बहुत लंबाई के रूप में रेखांकित कर रहे हैं गुइडो http://mail.python.org/pipermail/python-ideas/2009-March/003821.html से निम्नलिखित समझाने के पास जाना चाहिए:
[CPython] वैश्विक है, जो एक विशेष जादू प्रविष्टि __builtins__
(एक 'एस' के साथ) होते हैं पर लग रहा है जो है वह नियम जहां अंतर्निहित कार्यों को देखा जाता है। जब ऐसा dict डिफ़ॉल्ट रूप में एक ही वस्तु है निर्मित dict (जो __builtin__.__dict__
जहां __builtin__
- बिना 'एस' - मॉड्यूल को परिभाषित करने में निर्मित कार्यों जाता है) यह देता है आप पर्यवेक्षक विशेषाधिकारों; ...
उदाहरण के लिए,
Python2.7
>>> import __builtin__
>>> vars(globals()['__builtins__']) is vars(__builtin__)
True
>>>
Python3.2
>>> import builtins
>>> vars(globals()['__builtins__']) is vars(builtins)
True
>>>
संबंधित संसाधन:
अन्य नाम परिवर्तन - कैसे __builtins__
नाम संकल्प में प्रयोग किया जाता है का एक संक्षिप्त विवरण के लिए http://docs.pythonsprints.com/python3_porting/py-porting.html#name-changes
-__builtin__ module in Python
स्रोत
2012-01-28 19:09:11