if判斷語(yǔ)句

編程時(shí),需要檢查一系列條件,并根據(jù)決定采取什么措施。在Python中,if語(yǔ)句讓你能夠檢查程序的當(dāng)前狀態(tài),并據(jù)此采取相應(yīng)的措施。

事例:

language =['java','c#','python',]

for i in language:#遍歷所有的元素

if i == 'java':#當(dāng)元素值是java時(shí)? 大寫(xiě)

print(i.upper())

else:

print(i.title())#不是的大寫(xiě)首字母

條件測(cè)試

每一條if語(yǔ)句的核心都是一個(gè)值為T(mén)rue或False的表達(dá)式,這種表達(dá)式稱(chēng)為條件測(cè)試(條件判斷)。python根據(jù)True或者False來(lái)決定是否執(zhí)行if語(yǔ)句中的代碼。如果條件判斷為T(mén)rue,python就執(zhí)行if語(yǔ)句后面的代碼,如果為False,python就忽略這些代碼。

檢查是否相等

大多數(shù)條件判斷都將一個(gè)變量的當(dāng)前值同特定值進(jìn)行比較,最簡(jiǎn)單的條件判斷就是檢查變量值是否相等。

例:

age = 15

if? age>=18:

print('您得年紀(jì)是{}歲,已經(jīng)成年'.format(age))

else:

print('等幾年吧')

條件判斷可以使用的數(shù)學(xué)比較符號(hào),大于、小于、等于、大于等于、小于等于以及不等于

>、<、==、>=、<=、!=

檢查多個(gè)條件


使用and語(yǔ)句檢查多個(gè)條件

檢查兩個(gè)條件是否都為T(mén)rue,可以使用關(guān)鍵字and將兩個(gè)條件合二為一,如果兩個(gè)都是True則通過(guò),反之不通過(guò)。

例:

age_1 = 21

age_2 = 43

if age_1>=18 and age_2>=18:

print('通過(guò)')

else:

print('不通過(guò)')

使用or語(yǔ)句檢查多個(gè)條件

關(guān)鍵字or也可以檢查多個(gè)條件,但是至少有一個(gè)通過(guò),則條件通過(guò)。兩個(gè)條件都為False才不通過(guò)。

例:

age_1 = 21

age_2 = 13

if age_1>=18 or age_2>=18:

print('通過(guò)')

else:

print('不通過(guò)')

檢查特定值是否在列表中

有時(shí)候需要判斷特定值是否在列表中,可以使用in方法

例:

heros = ('李白','孫尚香','后裔','白起')

print('李白' in heros)#輸出結(jié)果為T(mén)rue 李白在列表中

檢查特定值不在列表中

使用not in方法查看特定值不在列表中

例:

heros = ['李白','孫尚香','后裔','白起']

print('伽羅' not in heros)

布爾表達(dá)式

隨著了解的深入,將遇到術(shù)語(yǔ)布爾表達(dá)式,它是條件判斷的別名,與條件表達(dá)式一致,布爾表達(dá)式的結(jié)果要么是True要么是False。

if語(yǔ)句

當(dāng)我們了解條件判斷后,可以開(kāi)始編寫(xiě)if語(yǔ)句了。

簡(jiǎn)單的if語(yǔ)句

例:

age = 19

if age >=19:#條件判斷通過(guò)

print('你已經(jīng)成年了')#執(zhí)行內(nèi)容

if else語(yǔ)句

當(dāng)判斷不通過(guò)時(shí),我們需要另一種操作,這種情況下,Python提供了if else語(yǔ)句。適用于2中條件判斷,總會(huì)執(zhí)行其中一個(gè)判斷。

例:

age=17

if age>=18:

print('成年了')

else:

print('未成年')

if elif else語(yǔ)句

當(dāng)我們需要進(jìn)行2個(gè)以上的條件判斷時(shí),python提供了if elif else語(yǔ)句。python只執(zhí)行其中的一個(gè)代碼塊,依次檢查條件直到條件通過(guò)。通過(guò)后會(huì)執(zhí)行條件內(nèi)的代碼,跳過(guò)其余的條件。

例:

age = 17

if? 18<=age<=65:

print("收費(fèi)30元")

elif 4<=age<=17:

print('收費(fèi)10元')

else:

print('收費(fèi)15元')

測(cè)試多個(gè)條件

if elif else語(yǔ)句結(jié)構(gòu)功能強(qiáng)大,但是僅適用于只有一個(gè)條件滿(mǎn)足的情況,因?yàn)闂l件通過(guò),剩下的條件直接跳過(guò),這樣的做法可以提高效率,但要注意,如果我們有一系列的條件需要執(zhí)行(存在多個(gè)True的情況),我們應(yīng)該使用if語(yǔ)句

例:

seasonings = ['麻醬','辣椒']#顧客選擇的口味只有麻醬和辣椒

if '麻醬' in seasonings:

print('加麻醬 ')

if '雞蛋' in seasonings:#顧客加不加麻醬,不影響雞蛋的存在

print('加雞蛋')

if '辣椒' in seasonings:

print('加辣椒')

print('雞蛋灌餅好了')

如果改為if elif語(yǔ)句

seasonings = ['麻醬','辣椒']

if '麻醬' in seasonings:#加完麻醬,條件判斷通過(guò),就跳過(guò)了后面的條件

print('加麻醬 ')

elif '雞蛋' in seasonings:

print('加雞蛋')

elif '辣椒' in seasonings:

print('加辣椒')

print('雞蛋灌餅好了')

使用if語(yǔ)句處理列表

通過(guò)結(jié)合使用if語(yǔ)句和列表,對(duì)列表中的特定的值做特殊處理。

檢查特殊元素

例:

heros = ['李白','孫尚香','后裔','白起']

for hero in? heros:

if hero == "李白":#當(dāng)遍歷的值是李白是,李白被選中了

print("李白被選了")

else:

print('請(qǐng)選擇英雄')

處理多個(gè)列表

有時(shí)候會(huì)出現(xiàn)多個(gè)列表進(jìn)行處理

例:有一個(gè)英雄列表,一個(gè)射手列表,一個(gè)我喜歡的英雄列表

heros = ['李白','孫尚香','后裔','魯班']

hero_shooter = ['孫尚香','后裔','魯班']

my_hero = []

for i in heros:#遍歷英雄列表

if i in hero_shooter:#如果英雄是射手

my_hero.append(i)#添加到我的英雄列表中

else:print('我喜歡射手')

print(my_hero)



頂頂頂

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容