का मान मुझे यह स्पष्ट है कि None
का उपयोग मूल्य की कमी को इंगित करने के लिए किया जाता है। लेकिन चूंकि सब कुछ कार्यान्वयन के दौरान अंतर्निहित मूल्य होना चाहिए, इसलिए मैं देख रहा हूं कि CPython
के संबंध में मूल्य की अनुपस्थिति को इंगित करने के लिए किस मूल्य का उपयोग किया गया है।Py_None
मैं documentation के आधार पर समझता हूं, NoneObject
एक सिंगलटन है। चूंकि मेरे c
कौशल जंगली हैं, मेरा सबसे अच्छा, शौकिया अनुमान, यह होगा कि None
का मान Py_None
ऑब्जेक्ट के लिए आवंटित स्मृति के सूचक होगा; चूंकि यह एक सिंगलटन है, यह विशिष्टता की गारंटी देगा। या इसे c
के NULL
पर सौंपा गया है, जिसमें this question में दूसरे उत्तर के आधार पर 0x0000
का मूल्य है?
साथ ही, प्रलेखन यह भी बताता है:
ध्यान दें कि कोई भी के लिए PyTypeObject सीधे अजगर/सी एपीआई में उजागर नहीं किया गया है।
जो मैं अनुमान लगा रहा हूं इसका मतलब है कि आप इसे स्रोत के माध्यम से खोज नहीं सकते हैं। (मैंने जो किया, उसे नहीं पता कि object.c
के लिए कहां देखना है, मैं कुछ भी समझ सकता हूं)
लेकिन मैं इस पर मेरी राय के बारे में निश्चित नहीं हूं इसलिए मैंने पूछा।
ऑब्जेक्ट CPython
में ऑब्जेक्ट के लिएस्तर मान क्या है?
'Py_None' * * है मूल्य। –
'Py_None' एक सूचक है। आप 'आईडी (कोई नहीं) ' –
का उपयोग करने के लिए मेमोरी पता प्राप्त कर सकते हैं तो' Py_None' के लिए यह' value == पहचान' है? –