None
एक वस्तु है।क्यों नहीं (कोई नहीं) वापसी 0? पाइथन में
>>> isinstance(None, object)
True
और इस तरह यह __str __()
>>> str(None)
'None'
जैसे कार्यों को रोजगार के रूप में लेकिन क्यों यह __len __ के लिए भी ऐसा ही नहीं है()?
>>> len(None)
Traceback (most recent call last):
File "<pyshell#3>", line 1, in <module>
len(None)
TypeError: object of type 'NoneType' has no len()
ऐसा लगता है जैसे कि यह pythonic एक ही तरीका है कि if list
स्वीकार्य है, भले ही चर None
है और न सिर्फ एक खाली सूची होगी।
क्या ऐसे मामले हैं जो len(None)
अधिक समस्या का उपयोग करेंगे?
क्योंकि 'none' में' __len__' नहीं है; यह ['आकार '] नहीं है (https://docs.python.org/2/library/collections.html#collections.Sized)। – jonrsharpe
@ जोंरशर्प लेकिन इसमें केवल एक जोड़ा गया फ़ंक्शन हो सकता है जो 0 को कोई फर्क नहीं पड़ता। – SuperBiasedMan
यह हो सकता है लेकिन यह ज्यादा समझ में नहीं आता है। किसी ऑब्जेक्ट की लंबाई क्यों न हो जब तक कि यह ऑब्जेक्ट्स का संग्रह न हो? –