我們在編程中經(jīng)常需要通過檢查某個條件尖滚,從而決定去做什么脐往。條件語句就是針對這一情景應(yīng)用的颂郎。本篇主要介紹 if 和 while薪铜。
(一) if語句
先來個總覽:
if 條件一:
條件一對應(yīng)的代碼塊 ①
elif 條件二:
條件一對應(yīng)的代碼塊 ②
else :
不滿足條件一和條件二對應(yīng)的代碼塊 ③
if 語句的核心就是值為True 或者False 的表達式众弓,即為上例中的條件一,條件二隔箍。在滿足不同的條件下谓娃,執(zhí)行不同的代碼塊,也就是代碼塊①②③蜒滩,只會執(zhí)行一個滨达。
判斷條件表達式值通常的情況:
- 判斷是否相等,比如 'a'=='A' ,或者 'a' 俯艰!= 'A' 捡遍;
print('a'=='A' )
print('a' != 'A' )
- 數(shù)字比較
print(96>69)
print(9-6>5)
- 檢查多個條件竹握,用 and 画株,or關(guān)聯(lián)起來組成一個表達式,可以簡化代碼
print(1>2 and 5>1)
print(1>2 or 5>1)
if elif else結(jié)構(gòu)中啦辐,可以多個elif,也可以沒有elif污秆,可以有else,也可以沒有昧甘。當有多個不同的條件需要判斷,并列寫if條件語句即可战得。
(二) while語句
while循環(huán)不斷的檢測表達式的值充边,如果為True,執(zhí)行代碼塊;如果為False,退出while循環(huán)浇冰;
while(條件表達式):
滿足條件的代碼塊
-
如何使用標志位active來控制while循環(huán)的中斷和進行
msg = ''
active = True
while active:
msg = input('請輸入y 或者 n') #input返回的類型為字符串str(即使用戶輸入數(shù)字)
if msg.lower() == 'y': #將輸入變成小寫
active = True
else:
active = False
-
使用break退出while循環(huán)
break可以強行退出循環(huán)贬媒,包括while循環(huán),for 循環(huán)肘习。
i = 10
while True:
if i > 5:
i = i - 1
else:
print("強行退出")
break
print(i)
輸出為:
9
8
7
6
5
強行退出
可以看出际乘,執(zhí)行了break之后,沒有再打印數(shù)據(jù)漂佩。所以break會無視標志位True強行退出循環(huán)的脖含。
-
使用continue退出當前while循環(huán)
和break不同,break是退出全部循環(huán)投蝉,continue是退出當前這次循環(huán)养葵。
i = 10
while i > 1:
i = i - 1
if i > 5:
continue
print(i)
輸出為:
5
4
3
2
1
可以看出,在i的值為9,8,7,6的時候瘩缆,執(zhí)行了continue关拒,沒有輸出打印i。即遇到continue后不再往下執(zhí)行代碼庸娱,直接開始下一次循環(huán)着绊。本例中一共跳過了4次循環(huán)。如果換成break熟尉,第一次循環(huán)就成立归露,直接跳出,沒有一次打印臣樱。
結(jié)語:條件語句比較簡單靶擦,使用while的時候,用標志位來控制開關(guān)很不錯雇毫。break和continue可以提高代碼效率玄捕。
點贊評論走起啊~