新聞中心
Python中的None是一個經(jīng)常被用到的知識點,但是很多人對于None的內(nèi)涵把握的還是不夠精確,今天就和我一起好好理解下這個小知識點吧。

筠連網(wǎng)站建設公司成都創(chuàng)新互聯(lián)公司,筠連網(wǎng)站設計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為筠連千余家提供企業(yè)網(wǎng)站建設服務。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站建設要多少錢,請找那個售后服務好的筠連做網(wǎng)站的公司定做!
1.None表示空,但它不等于空字符串、空列表,也不等同于False,通過下面的代碼進行驗證。
a = '' b = False c = [] print(a==None) #比較值 print(b==None) print(c==None) print(a is None) False False False False
2.在寫代碼的過程中,會對某些代碼進行判空操作。比如有一個變量a,那么if not a和if a is None兩者有區(qū)別嗎?如果說沒有區(qū)別,那么不管a為何值時,這兩個判斷語句會返回相同的結(jié)果,但事實是這樣嗎?一起看下面這段代碼,體會一下對None的判空操作
def fun():
return None
a =fun()
if not a: #邏輯運算
print('S')
else:
print('F')
if a is None:
print('S')
else:
print('F')
S
S
運行代碼發(fā)現(xiàn),結(jié)果是一樣的,這是由于我們調(diào)用函數(shù)時,會返回None,那么此時兩個判斷語句返回的結(jié)果是一樣的,但是如果我們將a的值換成一個空列表,會出現(xiàn)什么結(jié)果呢?
def fun():
return None
a = []
if not a: #邏輯運算
print('S')
else:
print('F')
if a is None:
print('S')
else:
print('F')
S
F
運行結(jié)果,發(fā)現(xiàn)會打印不一樣的值。那么這是為什么呢?對于not a它的意思相當于True,所以會打印出S,而a is None是比較運算,它們不屬于同一種類型,因此會出現(xiàn)不一樣的打印值。更多學習內(nèi)容,請點擊Python學習網(wǎng)。
網(wǎng)站名稱:創(chuàng)新互聯(lián)Python教程:如何理解Python中的None
URL網(wǎng)址:http://www.5511xx.com/article/djoieed.html


咨詢
建站咨詢
