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

Python中的a=value1 or value2詳解

 更新時(shí)間:2024年12月31日 09:40:04   作者:但老師  
Python中的`a=valueor0`是一種簡(jiǎn)潔的方式來(lái)為變量提供默認(rèn)值,利用了Python的布爾上下文和短路求值機(jī)制,如果`value`是“真值”,則`a`被賦值為`value`;如果`value`是“假值”,則`a`被賦值為0

Python a=value1 or value2

在Python中,a = value or 0 這種寫(xiě)法實(shí)際上是利用了Python的布爾上下文和短路求值機(jī)制。

在Python中,每個(gè)對(duì)象都有一個(gè)布爾值,這個(gè)值決定了它在布爾上下文中的“真”或“假”。

例如:

  • None、False、空字符串''、數(shù)字0、空列表[]和空字典{}在布爾上下文中都被視為False
  • 其他所有值都被視為True。

or運(yùn)算符在Python中是一個(gè)邏輯運(yùn)算符,它還具有短路求值的特性。

這意味著如果第一個(gè)操作數(shù)的布爾值為True,那么or表達(dá)式的結(jié)果就是第一個(gè)操作數(shù)的值,而不會(huì)去評(píng)估第二個(gè)操作數(shù)。

只有當(dāng)?shù)谝粋€(gè)操作數(shù)的布爾值為False時(shí),or運(yùn)算符才會(huì)評(píng)估第二個(gè)操作數(shù),并將其作為結(jié)果返回。

這種短路行為使得a = value or 0成為一種簡(jiǎn)潔的方式來(lái)為變量提供一個(gè)默認(rèn)值。

  • 如果value是“真值”,則a將被賦值為value;
  • 如果value是“假值”,則a將被賦值為0。

輸出結(jié)果

為了更清晰地理解a = value or 0的行為,

我們可以將所有情況窮舉:

表達(dá)式結(jié)果
a = None or 00
a = False or 00
a = '' or 00
a = 0 or 00
a = 1 or None1
a = 1 or False1
a = 1 or ''1
a = 1 or 01
a = None or NoneNone
a = False or FalseFalse
a = '' or ''''
a = 0 or 00

總結(jié)

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

相關(guān)文章

  • Python使用__new__()方法為對(duì)象分配內(nèi)存及返回對(duì)象的引用示例

    Python使用__new__()方法為對(duì)象分配內(nèi)存及返回對(duì)象的引用示例

    這篇文章主要介紹了Python使用__new__()方法為對(duì)象分配內(nèi)存及返回對(duì)象的引用,結(jié)合實(shí)例形式分析了Python對(duì)象初始化及內(nèi)存操作相關(guān)使用技巧,需要的朋友可以參考下
    2019-09-09
  • python可視化分析繪制散點(diǎn)圖和邊界氣泡圖

    python可視化分析繪制散點(diǎn)圖和邊界氣泡圖

    這篇文章主要介紹了python可視化分析繪制散點(diǎn)圖和邊界氣泡圖,python繪制散點(diǎn)圖,展現(xiàn)兩個(gè)變量間的關(guān)系,當(dāng)數(shù)據(jù)包含多組時(shí),使用不同顏色和形狀區(qū)分
    2022-06-06
  • Python selenium文件上傳方法匯總

    Python selenium文件上傳方法匯總

    這篇文章主要為大家詳細(xì)介紹了Python selenium文件上傳方法,selenium文件上傳的所有方法進(jìn)行整理,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • Python的Scrapy框架解析

    Python的Scrapy框架解析

    這篇文章主要為大家介紹了Python的Scrapy框架解析 ,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2021-12-12
  • python實(shí)現(xiàn)DNS正向查詢(xún)、反向查詢(xún)的例子

    python實(shí)現(xiàn)DNS正向查詢(xún)、反向查詢(xún)的例子

    這篇文章主要介紹了python實(shí)現(xiàn)DNS正向查詢(xún)、反向查詢(xún)的例子,需要的朋友可以參考下
    2014-04-04
  • scrapy+scrapyd+gerapy?爬蟲(chóng)調(diào)度框架超詳細(xì)教程

    scrapy+scrapyd+gerapy?爬蟲(chóng)調(diào)度框架超詳細(xì)教程

    Scrapy吸引人的地方在于它是一個(gè)框架,任何人都可以根據(jù)需求方便的修改。它也提供了多種類(lèi)型爬蟲(chóng)的基類(lèi),如BaseSpider、sitemap爬蟲(chóng)等,最新版本又提供了web2.0爬蟲(chóng)的支持,這篇文章主要介紹了scrapy+scrapyd+gerapy?爬蟲(chóng)調(diào)度框架超詳細(xì)教程,需要的朋友可以參考下
    2022-06-06
  • python通配符之glob模塊的使用詳解

    python通配符之glob模塊的使用詳解

    這篇文章主要介紹了python通配符之glob模塊的使用詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-04-04
  • Python中最常用的操作列表的幾種方法歸納

    Python中最常用的操作列表的幾種方法歸納

    這篇文章主要介紹了Python中最常用的操作列表的幾種方法歸納,列表的方法是Python學(xué)習(xí)中最基本的知識(shí),需要的朋友可以參考下
    2015-04-04
  • Python創(chuàng)建二維數(shù)組實(shí)例(關(guān)于list的一個(gè)小坑)

    Python創(chuàng)建二維數(shù)組實(shí)例(關(guān)于list的一個(gè)小坑)

    下面小編就為大家?guī)?lái)一篇Python創(chuàng)建二維數(shù)組實(shí)例(關(guān)于list的一個(gè)小坑)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-11-11
  • python多線程案例之多任務(wù)copy文件完整實(shí)例

    python多線程案例之多任務(wù)copy文件完整實(shí)例

    這篇文章主要介紹了python多線程案例之多任務(wù)copy文件,結(jié)合完整實(shí)例形式分析了Python使用multiprocessing模塊實(shí)現(xiàn)基于多線程的文件拷貝相關(guān)操作技巧,需要的朋友可以參考下
    2019-10-10

最新評(píng)論