詳解Python中的分支和循環(huán)結(jié)構(gòu)
一.條件語句
條件語句可以給定一個(gè)判斷條件,并在程序執(zhí)行過程中判斷該條件是否成立。程序根據(jù)判斷結(jié)果,執(zhí)行不同的操作,這樣就可以改變代碼的執(zhí)行順序,從而實(shí)現(xiàn)更多的功能。
Python中條件語句通常有if語句、if-else語句和if-elif-else語句。
1.if語句
if結(jié)構(gòu):滿足條件就執(zhí)行某個(gè)操作,不滿足就不執(zhí)行。語法: if 條件語句: 代碼段
# 如果num是奇數(shù)打印'奇數(shù)'
num = 11
if num % 2 !=0:
print('奇數(shù)')
運(yùn)行結(jié)果:
奇數(shù) 1
2.if-else語句
if-else結(jié)構(gòu):滿足條件執(zhí)行某個(gè)操作,不滿足條件的時(shí)候執(zhí)行另外一個(gè)操作。
語法:if
條件語句:
代碼段1(滿足條件要執(zhí)行的代碼)
else:
代碼段2(不滿足條件要執(zhí)行的代碼)
# 根據(jù)成績合格范圍打印'合格'或者'不合格'
grade = 96
if grade >= 60:
print('合格')
else:
print('不合格')
運(yùn)行結(jié)果:
合格 1
3.if-elif-else語句
if-elif-else結(jié)構(gòu):滿足不同的條件執(zhí)行不同的操作,后面的條件是在前面的條件不成立的時(shí)候進(jìn)行判斷的。
語法:if 條件語句1:
代碼段1
elif 條件語句2:
代碼段2
elif 條件語句3:
代碼段3
……
else:
代碼段N
# 根據(jù)成績合格范圍打印'優(yōu)秀(90以上)''合格(60-90)'、'不合格(60以下)'
grade = 96
if grade > 90:
print('優(yōu)秀')
elif 60 <= grade < 90:
print('合格')
else:
print('不合格')
運(yùn)行結(jié)果:
優(yōu)秀 1
二.循環(huán)語句
循環(huán)的意思是讓程序重復(fù)地執(zhí)行某些語句。在實(shí)際應(yīng)用中,當(dāng)碰到需要多次重復(fù)地執(zhí)行一個(gè)或多個(gè)任務(wù)時(shí),可考慮使用循環(huán)語句來解決。其特點(diǎn)是在給定條件成立時(shí),重復(fù)執(zhí)行某個(gè)程序段。
1.for循環(huán)
語法:for 變量名
in 序列:
循環(huán)體
# 循環(huán)十次hello world! for index in range(10): print(index, 'hello world!')
運(yùn)行結(jié)果:
0 hello world! 1 hello world! 2 hello world! 3 hello world! 4 hello world! 5 hello world! 6 hello world! 7 hello world! 8 hello world! 9 hello world!
注釋:range函數(shù)可以產(chǎn)生指定范圍的數(shù)字序列,配合for循環(huán)使用可以更加方便的控制for循環(huán)的循環(huán)次數(shù)。
1)range(N)---產(chǎn)生0~N-1的數(shù)字序列例如:range(3) -> 0,1,2 1)range(M,N)---產(chǎn)生M~N-1的數(shù)字序列例如:range(1,4) -> 1,2,3 1)range(M,N,step)---從M開始每隔step產(chǎn)生下一個(gè)數(shù)字,到N前一個(gè)數(shù)為止例如:range(0,4,2) -> 0,2
2.while循環(huán)
語法:while 條件語句: 循環(huán)體
num = 0
while num < 4:
print('num:',num)
num += 1
運(yùn)行結(jié)果:
num: 0 num: 1 num: 2 num: 3
for與while的使用情景:
使用for循環(huán)情景:1.循環(huán)次數(shù)確定的時(shí)候 2.遍歷序列使用while循環(huán)情景:1.死循環(huán) 2.循環(huán)次數(shù)不確定的時(shí)候
三.循環(huán)嵌套
在Python語言中是可以允許在一個(gè)循環(huán)體里面嵌入另一個(gè)循環(huán),例如for-for循環(huán),while-while循環(huán),也可以在while循環(huán)中可以嵌入for循環(huán),反之,亦行。
i = 2 while i < 10: j = 2 while j <= i / j: if not i % j: break j = j + 1 if j > i / j: print(i, " 是素?cái)?shù)") i = i + 1
運(yùn)行結(jié)果:
2 是素?cái)?shù) 3 是素?cái)?shù) 5 是素?cái)?shù) 7 是素?cái)?shù)
四.continue、break和pass以及else語句
1.continue語句
作用:是循環(huán)體中的關(guān)鍵字,用來跳過當(dāng)前循環(huán)的剩余語句,然后繼續(xù)進(jìn)行下一輪循環(huán)。
for x in range(4): print(x, 'hello') if x % 2 == 0: continue print(x, 'world')
運(yùn)行結(jié)果:
0 hello 1 hello 1 world 2 hello 3 hello 3 world
2.break語句
作用:是循環(huán)體中的關(guān)鍵字,用來終止循環(huán)語句,即使循環(huán)條件沒有False條件或者序列還沒被完全遞歸完,也會(huì)停止執(zhí)行循環(huán)語句。(如果使用嵌套循環(huán),break語句將停止最深層的循環(huán),并開始執(zhí)行下一行代碼。)
for x in range(4): print(x, 'hello') if x % 2 == 0: break print(x, 'world')
運(yùn)行結(jié)果:
0 1
3.pass語句
作用:是空語句,不做任何事情,一般用做占位語句,是為了保持程序結(jié)構(gòu)的完整性。
for x in range(4): print(x, 'hello') if x % 2 == 0: pass print(x, 'world')
運(yùn)行結(jié)果:
0 hello 0 world 1 hello 1 world 2 hello 2 world 3 hello 3 world
4.else語句
作用: 可以通過判斷else中代碼有沒有執(zhí)行來判斷循環(huán)有沒有遇到break。
1)完整的for循環(huán) ?。玻┩暾膚hile循環(huán)
for 變量 in 序列: while 條件語句:
循環(huán)體 循環(huán)體
else: else:
代碼段 代碼段
沒有遇到break的情景:
for x in range(4):
print(x)
else:
print('hello')
運(yùn)行結(jié)果:
0 1 2 3 hello
遇到break的情景:
for x in range(4):
print(x)
break
else:
print('hello')
運(yùn)行結(jié)果:
0
總結(jié)
以上所述是小編給大家介紹的Python中的分支和循環(huán)結(jié)構(gòu),希望對(duì)大家有所幫助!
相關(guān)文章
django中url映射規(guī)則和服務(wù)端響應(yīng)順序的實(shí)現(xiàn)
這篇文章主要介紹了django中url映射規(guī)則和服務(wù)端響應(yīng)順序的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04
利用python實(shí)現(xiàn)JSON文檔與Python對(duì)象互相轉(zhuǎn)換
這篇文章主要介紹了利用python實(shí)現(xiàn)JSON文檔與Python對(duì)象互相轉(zhuǎn)換,通過對(duì)將一個(gè)JSON文檔映射為Python對(duì)象問題的展開介紹主題內(nèi)容,需要的朋友可以參考一下2022-06-06
Pandas 缺失數(shù)據(jù)處理的實(shí)現(xiàn)
這篇文章主要介紹了Pandas 缺失數(shù)據(jù)處理的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11
python GUI庫圖形界面開發(fā)之PyQt5時(shí)間控件QTimer詳細(xì)使用方法與實(shí)例
這篇文章主要介紹了python GUI庫圖形界面開發(fā)之PyQt5時(shí)間控件QTimer詳細(xì)使用方法與實(shí)例,需要的朋友可以參考下2020-02-02
Python中的各個(gè)多線程模塊之間的區(qū)別解析
Python中涉及多線程的主要模塊包括threading、thread和concurrent.futures,現(xiàn)代Python編程推薦使用threading和concurrent.futures,以提供更高層次的抽象和可用性,感興趣的朋友跟隨小編一起看看吧2024-09-09
python+opencv實(shí)現(xiàn)論文插圖局部放大并拼接效果
在做圖像數(shù)據(jù)標(biāo)注時(shí),很難一次就做到精準(zhǔn)標(biāo)注,如果目標(biāo)比較小,即使微調(diào)也難以做到精準(zhǔn),所以就需要另外一個(gè)窗口對(duì)標(biāo)注區(qū)域進(jìn)行局部放大以方便微調(diào),這篇文章主要給大家介紹了關(guān)于python+opencv實(shí)現(xiàn)論文插圖局部放大并拼接效果的相關(guān)資料,需要的朋友可以參考下2021-10-10

