新聞中心
在知乎上遇到一個問題,說:計算機中的「null」怎么讀?

沈丘網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、自適應(yīng)網(wǎng)站建設(shè)等網(wǎng)站項目制作,到程序開發(fā),運營維護。創(chuàng)新互聯(lián)成立于2013年到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)。
null正確的發(fā)音是/n^l/,有點類似四聲‘納兒’,在計算機中null是一種類型,代表空字符,沒有與任何一個值綁定并且存儲空間也沒有存儲值。
Python中其實沒有null這個詞,取而代之的是None對象,即特殊類型NoneType,代表空、沒有。
None不能理解為0,因為0是有意義的,而None是一個特殊的空值:
>>> NoneType
NameError: name 'NoneType' is not defined
>>> type(None)
NoneType
None也不能理解為空字符'',因為空字符的類型是字符串:
>>>type('')
雖然表示空,但None是一個具體的Python對象,這和null含義不一樣。
在Python中返回None:
>>> def has_no_return():
... pass
>>> has_no_return()
>>> print(has_no_return())
None
你可以使用 Python 的標(biāo)識函數(shù)id()檢查 None 的唯一性,它返回某一對象的唯一標(biāo)識符,如果兩個變量的 id 相同,那么它們實際上指向的是同一個對象:
>>> NoneType = type(None)
>>> id(None)
10748000
>>> my_none = NoneType()
>>> id(my_none)
10748000
>>> another_none = NoneType()
>>> id(another_none)
10748000
>>> def function_that_does_nothing(): pass
>>> return_value = function_that_does_nothing()
>>> id(return_value)
10748000
在Python中,None的用處有很多,比如作為變量初始值、作為函數(shù)默認參數(shù)、作為空值等等。
變量初始值:
>>> print(bar)
Traceback (most recent call last):
File "", line 1, in
NameError: name 'bar' is not defined
>>> bar = None
>>> print(bar)
None
函數(shù)默認參數(shù):
def bad_function(new_elem, starter_list=[]):
starter_list.append(new_elem)
return starter_list
空值:
>>> class DontAppend: pass
...
>>> def good_function(new_elem=DontAppend, starter_list=None):
... if starter_list is None:
... starter_list = []
... if new_elem is not DontAppend:
... starter_list.append(new_elem)
... return starter_list
...
>>> good_function(starter_list=my_list)
['a', 'b', 'c', 'd', 'e']
>>> good_function(None, my_list)
['a', 'b', 'c', 'd', 'e', None]
總得來說,None是一個對象,而null是一個類型。
Python中沒有null,只有None,None有自己的特殊類型NoneType。
None不等于0、任何空字符串、False等。
在Python中,None、False、0、””(空字符串)、、()(空元組)、{}(空字典)都相當(dāng)于False。
分享文章:Python中的Null是什么?
網(wǎng)頁地址:http://www.5511xx.com/article/cdhpeie.html


咨詢
建站咨詢
