में अजीब बंद व्यवहार मैं एक निम्नलिखित सरल कोड है। लेकिन यह आंतरिक रूप से कैसे काम करता है?अजगर
AFAIK, पायथन चर वस्तुएं केवल संदर्भों के संदर्भ में हैं, इसलिए पहले बंद करने से ऑब्जेक्ट को पहले i
संदर्भ संलग्न करना होगा - और यह ऑब्जेक्ट निश्चित रूप से 1, 3 ओ_ओ नहीं है। यह कैसे होता है कि पाइथन क्लोजर इस चर संदर्भ के ऑब्जेक्ट के बजाय चर स्वयं संलग्न करता है? क्या यह परिवर्तनीय नाम को सादा पाठ के रूप में सहेजता है, कुछ "परिवर्तनीय संदर्भ" या क्या?
यह कुछ अतिरिक्त जानकारी तो मैं देख सकते हैं कि छिपा चर "सेव" करने के लिए गुंजाइश है, यह का उपयोग, आदि उपयोग किया जाता है इस विषय पर उपलब्ध है? – grigoryvp
'(लैम्ब्डा एक्स: लैम्ब्डा: एक्स) (i) 'पाइथन में मैंने देखा है सबसे उग्र चीजों में से एक है। Ick। (यह नहीं कि आपका जवाब गलत है या बुरा है, प्रति-से, बस कह रहा है - इसे पढ़ना मुश्किल है)। –
@EyeofHell: मुझे लगता है [स्फूर्ति-227] (http://www.python.org/dev/peps/pep-0227/) अजगर scoping नियमों के बारे में विहित दस्तावेज है। इसके अलावा, यहां SO पर कुछ अच्छे उत्तर दिए गए हैं, उदा। [यहां] (http://stackoverflow.com/questions/291978/short-description-of-python-scoping-rules) – georg