欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python空值判斷方式(if xxx和if xxx is None的區(qū)別及說明)

 更新時間:2022年11月30日 10:23:27   作者:Urmsone  
這篇文章主要介紹了python空值判斷方式(if xxx和if xxx is None的區(qū)別及說明),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

if xxx 和if xxx is None的區(qū)別

一、 if xxx

None,’’,0,[],{},() ,False都被判斷為空值(not xxx等價)

如下代碼輸出所示,

if __name__ == '__main__':
? ? print("---not None == (not '') == (not 0) == (not []) == (not {}) == (not ()) == (not False)---")
? ? print(not None == (not '') == (not 0) == (not []) == (not {}) == (not ()) == (not False))

輸出

---not None == (not '') == (not 0) == (not []) == (not {}) == (not ()) == (not False)---
True

if xxx

如下代碼輸出所示,

if __name__ == '__main__':
? ? print("---output a,b---")
? ? a = []
? ? b = None
? ? print("a=[]")
? ? print("b=None")
? ? print("--- if x")
? ? if a:
? ? ? ? print("a")
? ? else:
? ? ? ? print("None")
? ? if b:
? ? ? ? print("b")
? ? else:
? ? ? ? print("None")

輸出

---output a,b---
a=[]
b=None
--- if x
None
None

結(jié)論:

將空列表換成上述的其他空類型,結(jié)果一樣。

如果需要過濾None值和空對象時(如[],{},''等),可使用這種寫法

二、 if xxx is None

該寫法可將None和其他空值對象區(qū)分開來

如下代碼輸出所示:

if __name__ == '__main__':
? ? a = []
? ? b = None
? ? print("a=[]")
? ? print("b=None")
? ? print("--- is None")
? ? if a is None:
? ? ? ? print("None")
? ? else:
? ? ? ? print("a")
? ? if b is None:
? ? ? ? print("None")
? ? else:
? ? ? ? print("b")

輸出

---output a,b---
a=[]
b=None
--- is None
a
None

結(jié)論:

需要區(qū)分[],{},'',()等空值對象與None的區(qū)別時時可使用這種寫法

貼下簡單的測試代碼

if __name__ == '__main__':
? ? print("---not None == (not '') == (not 0) == (not []) == (not {}) == (not ()) == (not False)---")
? ? print(not None == (not '') == (not 0) == (not []) == (not {}) == (not ()) == (not False))

? ? print("---output a,b---")
? ? a = []
? ? b = None
? ? print("a=[]")
? ? print("b=None")
? ? print("--- if x")
? ? if a:
? ? ? ? print("a")
? ? else:
? ? ? ? print("None")
? ? if b:
? ? ? ? print("b")
? ? else:
? ? ? ? print("None")

? ? print("--- is None")
? ? if a is None:
? ? ? ? print("None")
? ? else:
? ? ? ? print("a")
? ? if b is None:
? ? ? ? print("None")
? ? else:
? ? ? ? print("b")

? ? print("--- not")
? ? if not a:
? ? ? ? print("None")
? ? else:
? ? ? ? print("a")

? ? if not b:
? ? ? ? print("None")
? ? else:
? ? ? ? print("b")

? ? print("--- is not None")
? ? if a is not None:
? ? ? ? print("a")
? ? else:
? ? ? ? print("None")

? ? if b is not None:
? ? ? ? print("B")
? ? else:
? ? ? ? print("None")

以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 深入理解Python虛擬機(jī)中的反序列化pyc文件

    深入理解Python虛擬機(jī)中的反序列化pyc文件

    再這篇文章中我們將主要對?Code?Object?進(jìn)行分析,并且詳細(xì)它是如何被反序列化的,通過本篇文章我們將能夠把握整個?pyc?文件結(jié)構(gòu),感興趣的可以了解一下
    2023-05-05
  • python中ThreadPoolExecutor線程池和ProcessPoolExecutor進(jìn)程池

    python中ThreadPoolExecutor線程池和ProcessPoolExecutor進(jìn)程池

    這篇文章主要介紹了python中ThreadPoolExecutor線程池和ProcessPoolExecutor進(jìn)程池,文章圍繞主題相關(guān)資料展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,感興趣的小伙伴可以參考一下
    2022-06-06
  • 使用Python中OpenCV和深度學(xué)習(xí)進(jìn)行全面嵌套邊緣檢測

    使用Python中OpenCV和深度學(xué)習(xí)進(jìn)行全面嵌套邊緣檢測

    這篇文章主要介紹了使用Python中OpenCV和深度學(xué)習(xí)進(jìn)行全面嵌套邊緣檢測,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05
  • python解決報錯ImportError: Bad git executable.問題

    python解決報錯ImportError: Bad git executable.問題

    這篇文章主要介紹了python解決報錯ImportError: Bad git executable.問題。具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • 分享5個短小精悍的Python趣味腳本,適合小白上手!

    分享5個短小精悍的Python趣味腳本,適合小白上手!

    這篇文章主要給大家分享介紹了5個短小精悍的Python趣味腳本,非常適合小白上手,分別包含圖片尺寸縮小、pdf轉(zhuǎn)txt文檔、猜數(shù)字游戲、電池電量告警以及圖片添加水印等腳本,需要的朋友可以參考下
    2022-02-02
  • 全網(wǎng)最新用python實(shí)現(xiàn)各種文件類型轉(zhuǎn)換的方法

    全網(wǎng)最新用python實(shí)現(xiàn)各種文件類型轉(zhuǎn)換的方法

    這篇文章主要介紹了用python實(shí)現(xiàn)各種文件類型轉(zhuǎn)換的方法,包括word轉(zhuǎn)pdf,excel轉(zhuǎn)pdf,ppt轉(zhuǎn)pdf,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2023-05-05
  • Python DataFrame.groupby()聚合函數(shù),分組級運(yùn)算

    Python DataFrame.groupby()聚合函數(shù),分組級運(yùn)算

    python的pandas包提供的數(shù)據(jù)聚合與分組運(yùn)算功能很強(qiáng)大,也很靈活,本文就帶領(lǐng)大家一起來了解groupby技術(shù),感興趣的朋友跟隨小編一起來看下
    2018-09-09
  • Django框架模板介紹

    Django框架模板介紹

    今天小編就為大家分享一篇關(guān)于Django框架模板介紹,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-01-01
  • Python操作JSON實(shí)現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)交換

    Python操作JSON實(shí)現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)交換

    這篇文章主要介紹了Python操作JSON實(shí)現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)交換,JSON的全稱是 JavaScript Object Notation,是一種輕量級的數(shù)據(jù)交換格式,關(guān)于JSON的更多相關(guān)內(nèi)容感興趣的小伙伴可以參考一下
    2022-06-06
  • 對Pytorch 中的contiguous理解說明

    對Pytorch 中的contiguous理解說明

    這篇文章主要介紹了對Pytorch 中的contiguous理解說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03

最新評論