色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

Python 并列和或者條件的使用說明

瀏覽:3日期:2022-06-25 17:55:00

對Python 同時符合兩個的條件的語句,用and連接,不能用&&(會報錯);

也可以用or表示或者。

代碼如下:

print ’開始測試’ a = 12 b = 13 c = 1 a_s = ’12’ b_s = ’13’ if a < b and a_s < b_s: print ’True’ else: print ’不成立’ if a < b or a_s > b_s: print ’True’ else: print ’不成立’

輸出:

# 開始測試# True# True判斷一個 list 是否為空

傳統的方式:

if len(mylist): # Do something with my listelse: # The list is empty

由于一個空 list 本身等同于 False,所以可以直接:

if mylist: # Do something with my listelse: # The list is empty

補充:python if語句多個條件-python if條件判斷語句

if的基本格式

if語句用來做判斷,并選擇要執行的語句分支。

基本格式如下:

if CONDITION1:code_block(1)elif CONDITION2:code_block(2)elif CONDITION3:......else:code_block_else

其中elif是可選的,可以有任意多個,else是可選的,表示全都不滿足條件時該執行的分支。

例如:

a = 4if a > 3:print('hello world')

條件表達式Condition部分以運算結果的True、False為if的分支執行依據。在Python中所有數據對象要么是True,要么是False,所以任何一個數據、表達式都可以作為if的Condition。

例如:

if 1:...if a > b:...if ’a’:...if []:...if [[]]:...if a and b:...

至于如何判斷True、False,參見布爾值和邏輯運算。

switch/case的替代方案

在python中并沒有switch和case的分支選擇語句,但是使用if或dict也能輕松實現。

例如,使用dict實現等值的分支選擇:

D = {'apple': 8.0,'pear': 3.5,'orange': 2.5,'banana': 2.5}fruit = 'banana'print(D[fruit])

上面沒有提供default情況時的分支,但使用get()可以設置dict中找不到key時默認返回的值。

例如:

print(D.get('greens','no this fruit'))

還可以通過in的成員測試來設置分支:

if fruit in D:print(D[fruit])else:print('no this fruit')

dict只能做等值比較的分支選擇,要提供非等值的分支比較,只能用if語句。

例如:

score = 77if score >= 90:print('優秀')elif 70 <= score < 90:print('良好')elif 60 <= score < 70:print('及格')else:print('不及格')

使用if的好處是通俗易懂,使用dict的好處是將數據存儲到數據結構中,而存儲到數據結構中的數據可以是很復雜的。比如,將函數作為dict的value。

if/else三元表達式

即所謂的三目運算,只不過python中不支持x ? y : z的方式,而是使用if的另一種表達式語法。

對于if x: xxx; else yyy這樣的兩分支語句,可以使用更精簡的表達式方式來描述:

xxx if x else yyy

雖然看上去和原始的沒什么區別,但很多時候要方便的多。

例如賦值:

if x:a = yelse:a = z

等價的三元if寫法:

a = y if x else z

注意,上面'='表示這整行是一個賦值語句,右邊的是評估對象,評估之后賦值給a,也就是等價于a = (y if x else z),而不是等價于(a = y) if x else z。

else不能缺少,否則不是三元運算。另外,if的分支代碼體y和z都必須只能是單條語句,不能是多語句。也就是說,不能轉換下面的代碼格式為三元表達式。

if x:statement1statement2else:statement3statement4

實際上,三元運算也能使用and / or來實現,還能使用序列 + bool()來實現。

例如:

a = ((x and y) or z)

一般比較少用and/or來實現分支,因為可讀性不好,而且并不總是能和if等價。但有一種情況使用and/or非常方便:從多個值中選擇一個真值。

例如:

a = x or y or z or None

下面是使用序列 + bool()的方式實現的三元運算操作,思路是bool(CONDITION)作為序列的索引。

a = [y, z][bool(x)]

還是那句話,python中基本總是首選簡單的、通俗易懂的方式。所以,用if吧。

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持好吧啦網。如有錯誤或未考慮完全的地方,望不吝賜教。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 亚洲欧美日韩国产精品一区 | 午夜宅宅宅影院在线观看 | 日韩黄在线观看免费视频 | 国产三级在线 | 国产一区二区三区四区在线 | 美女又黄又www | 亚洲第一在线播放 | 中文字幕一二三四区2021 | 99热只有精品一区二区 | 国产精品日韩欧美在线第3页 | 美女福利视频国产片 | 99在线小视频 | 欧美—级v免费大片 | 国产成年人 | 精品国产欧美一区二区最新 | 国产高颜值露脸在线观看 | 在线不卡一区二区三区日韩 | 日本特级淫片免费看 | 亚洲精品日韩在线一区 | 国产日韩精品在线 | a毛片在线 | 男女国产一级毛片 | 免费ab | 日韩欧美在线视频一区二区 | 欧美一级片手机在线观看 | 亚洲1314| 国产午夜伦伦伦午夜伦 | 在线欧美日韩精品一区二区 | 久草视频资源 | 欧美成人精品手机在线观看 | 日韩免费高清一级毛片 | 91天堂网 | 免费观看日本特色做爰视频在线 | 亚洲精品中文字幕久久久久久 | 男女视频在线观看免费高清观看 | 岛国搬运工最新网地址 | 国产免费视屏 | 成人国产三级在线播放 | 18视频在线观看 | 久久亚洲精品一区成人 | 亚洲精品99久久久久久 |