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

Python判斷變量是否是None寫法代碼實例

 更新時間:2020年10月09日 15:50:23   作者:lincappu  
這篇文章主要介紹了Python判斷變量是否是None寫法代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

代碼中經(jīng)常會有變量是否為None的判斷,有三種主要的寫法:

  • 第一種是`if x is None`;
  • 第二種是 `if not x:`;
  • 第三種是`if not x is None`(這句這樣理解更清晰`if not (x is None)`) 。

如果你覺得這樣寫沒啥區(qū)別,那么你可就要小心了,這里面有一個坑。先來看一下代碼:

>>> x = 1
>>> not x
False
>>> x = [1]
>>> not x
False
>>> x = 0
>>> not x
True
>>> x = [0]   # You don't want to fall in this one.
>>> not x
False

在python中 None, False, 空字符串"", 0, 空列表[], 空字典{}, 空元組()都相當于False ,即:

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

因此在使用列表的時候,如果你想?yún)^(qū)分x==[]和x==None兩種情況的話, 此時`if not x:`將會出現(xiàn)問題:

>>> x = []
>>> y = None
>>> 
>>> x is None
False
>>> y is None
True
>>> 
>>> 
>>> not x
True
>>> not y
True
>>> 
>>> 
>>> not x is None
>>> True
>>> not y is None
False
>>>

也許你是想判斷x是否為None,但是卻把`x==[]`的情況也判斷進來了,此種情況下將無法區(qū)分。

對于習慣于使用if not x這種寫法的pythoner,必須清楚x等于None, False, 空字符串"", 0, 空列表[], 空字典{}, 空元組()時對你的判斷沒有影響才行。

而對于`if x is not None`和`if not x is None`寫法,很明顯前者更清晰,而后者有可能使讀者誤解為`if (not x) is None`,因此推薦前者,同時這也是谷歌推薦的風格

結論:

`if x is not None`是最好的寫法,清晰,不會出現(xiàn)錯誤,以后堅持使用這種寫法。

使用if not x這種寫法的前提是:必須清楚x等于None, False, 空字符串"", 0, 空列表[], 空字典{}, 空元組()時對你的判斷沒有影響才行。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • Python字典遍歷操作實例小結

    Python字典遍歷操作實例小結

    這篇文章主要介紹了Python字典遍歷操作,結合實例形式總結分析了Python遍歷字典鍵值對、遍歷鍵、遍歷值等相關操作技巧,需要的朋友可以參考下
    2019-03-03
  • 零基礎寫python爬蟲之抓取百度貼吧代碼分享

    零基礎寫python爬蟲之抓取百度貼吧代碼分享

    前面幾篇都是以介紹基礎知識為主,各位童鞋估計都在犯嘀咕了,你到底寫不寫爬蟲啊??額,好吧,本文就給大家寫一個簡單的百度貼吧的python爬蟲代碼。
    2014-11-11
  • 如何搜索查找并解決Django相關的問題

    如何搜索查找并解決Django相關的問題

    每個程序員都會在開發(fā)過程中遇到這樣或那樣的問題, 有時光靠一個人是無法解決所有問題的, 所以我們應該找到適當?shù)牡胤教釂?
    2014-06-06
  • Python工具腳本調用外層模塊的操作方法

    Python工具腳本調用外層模塊的操作方法

    今天有同學問我,這種情況應該怎么調用,才能讓remove_outdated_data.py正確導入models里面的模塊,下面通過本文介紹下Python工具腳本調用外層模塊的方法,感興趣的朋友一起看看吧
    2024-02-02
  • 將自己的數(shù)據(jù)集制作成TFRecord格式教程

    將自己的數(shù)據(jù)集制作成TFRecord格式教程

    今天小編就為大家分享一篇將自己的數(shù)據(jù)集制作成TFRecord格式教程,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • Python中的Request請求重試機制

    Python中的Request請求重試機制

    這篇文章主要介紹了Python中的Request請求重試機制,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • Python3中簡單的文件操作及兩個簡單小實例分享

    Python3中簡單的文件操作及兩個簡單小實例分享

    文件操作是我們日常在使用python的時候經(jīng)常會用到的,下面這篇文章主要給大家介紹了關于Python3中簡單的文件操作及兩個簡單小實例的相關資料,文中介紹的非常詳細,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-06-06
  • python計算列表內各元素的個數(shù)實例

    python計算列表內各元素的個數(shù)實例

    今天小編就為大家分享一篇python計算列表內各元素的個數(shù)實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • Python使用type關鍵字創(chuàng)建類步驟詳解

    Python使用type關鍵字創(chuàng)建類步驟詳解

    在本文里我們給讀者們整理了關于Python如何使用type關鍵字創(chuàng)建類的相關知識點,需要的朋友們參考學習下。
    2019-07-07
  • Python PyInstaller安裝和使用教程詳解

    Python PyInstaller安裝和使用教程詳解

    這篇文章主要介紹了Python PyInstaller安裝和使用教程,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-01-01

最新評論