詳解Python中的分支和循環(huán)結(jié)構(gòu)
一.條件語(yǔ)句
條件語(yǔ)句可以給定一個(gè)判斷條件,并在程序執(zhí)行過(guò)程中判斷該條件是否成立。程序根據(jù)判斷結(jié)果,執(zhí)行不同的操作,這樣就可以改變代碼的執(zhí)行順序,從而實(shí)現(xiàn)更多的功能。
Python中條件語(yǔ)句通常有if語(yǔ)句、if-else語(yǔ)句和if-elif-else語(yǔ)句。
1.if語(yǔ)句
if結(jié)構(gòu):滿足條件就執(zhí)行某個(gè)操作,不滿足就不執(zhí)行。語(yǔ)法: if 條件語(yǔ)句: 代碼段
# 如果num是奇數(shù)打印'奇數(shù)'
num = 11
if num % 2 !=0:
print('奇數(shù)')
運(yùn)行結(jié)果:
奇數(shù) 1
2.if-else語(yǔ)句
if-else結(jié)構(gòu):滿足條件執(zhí)行某個(gè)操作,不滿足條件的時(shí)候執(zhí)行另外一個(gè)操作。
語(yǔ)法:if
條件語(yǔ)句:
代碼段1(滿足條件要執(zhí)行的代碼)
else:
代碼段2(不滿足條件要執(zhí)行的代碼)
# 根據(jù)成績(jī)合格范圍打印'合格'或者'不合格'
grade = 96
if grade >= 60:
print('合格')
else:
print('不合格')
運(yùn)行結(jié)果:
合格 1
3.if-elif-else語(yǔ)句
if-elif-else結(jié)構(gòu):滿足不同的條件執(zhí)行不同的操作,后面的條件是在前面的條件不成立的時(shí)候進(jìn)行判斷的。
語(yǔ)法:if 條件語(yǔ)句1:
代碼段1
elif 條件語(yǔ)句2:
代碼段2
elif 條件語(yǔ)句3:
代碼段3
……
else:
代碼段N
# 根據(jù)成績(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)語(yǔ)句
循環(huán)的意思是讓程序重復(fù)地執(zhí)行某些語(yǔ)句。在實(shí)際應(yīng)用中,當(dāng)碰到需要多次重復(fù)地執(zhí)行一個(gè)或多個(gè)任務(wù)時(shí),可考慮使用循環(huán)語(yǔ)句來(lái)解決。其特點(diǎn)是在給定條件成立時(shí),重復(fù)執(zhí)行某個(gè)程序段。
1.for循環(huán)
語(yǔ)法: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開(kāi)始每隔step產(chǎn)生下一個(gè)數(shù)字,到N前一個(gè)數(shù)為止例如:range(0,4,2) -> 0,2
2.while循環(huán)
語(yǔ)法:while 條件語(yǔ)句: 循環(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語(yǔ)言中是可以允許在一個(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語(yǔ)句
1.continue語(yǔ)句
作用:是循環(huán)體中的關(guān)鍵字,用來(lái)跳過(guò)當(dāng)前循環(huán)的剩余語(yǔ)句,然后繼續(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語(yǔ)句
作用:是循環(huán)體中的關(guān)鍵字,用來(lái)終止循環(huán)語(yǔ)句,即使循環(huán)條件沒(méi)有False條件或者序列還沒(méi)被完全遞歸完,也會(huì)停止執(zhí)行循環(huán)語(yǔ)句。(如果使用嵌套循環(huán),break語(yǔ)句將停止最深層的循環(huán),并開(kāi)始執(zhí)行下一行代碼。)
for x in range(4): print(x, 'hello') if x % 2 == 0: break print(x, 'world')
運(yùn)行結(jié)果:
0 1
3.pass語(yǔ)句
作用:是空語(yǔ)句,不做任何事情,一般用做占位語(yǔ)句,是為了保持程序結(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語(yǔ)句
作用: 可以通過(guò)判斷else中代碼有沒(méi)有執(zhí)行來(lái)判斷循環(huán)有沒(méi)有遇到break。
1)完整的for循環(huán) ?。玻┩暾膚hile循環(huán)
for 變量 in 序列: while 條件語(yǔ)句:
循環(huán)體 循環(huán)體
else: else:
代碼段 代碼段
沒(méi)有遇到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)文章
Python基礎(chǔ)入門(mén)之if判斷語(yǔ)句
Python條件語(yǔ)句是通過(guò)一條或多條語(yǔ)句的執(zhí)行結(jié)果(True或者False)來(lái)決定執(zhí)行的代碼塊,下面這篇文章主要給大家介紹了關(guān)于Python基礎(chǔ)入門(mén)之if判斷語(yǔ)句的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2021-09-09
django中url映射規(guī)則和服務(wù)端響應(yīng)順序的實(shí)現(xiàn)
這篇文章主要介紹了django中url映射規(guī)則和服務(wù)端響應(yīng)順序的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(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)換,通過(guò)對(duì)將一個(gè)JSON文檔映射為Python對(duì)象問(wèn)題的展開(kāi)介紹主題內(nèi)容,需要的朋友可以參考一下2022-06-06
Windows安裝Anaconda3的方法及使用過(guò)程詳解
今天帶大家學(xué)習(xí)的是關(guān)于Python的相關(guān)知識(shí),文章圍繞著在windows上Anaconda3的安裝方法及使用展開(kāi),文中有非常詳細(xì)的介紹,需要的朋友可以參考下2021-06-06
解決keras模型保存h5文件提示無(wú)此目錄問(wèn)題
這篇文章主要介紹了解決keras模型保存h5文件提示無(wú)此目錄問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-07-07
Pandas 缺失數(shù)據(jù)處理的實(shí)現(xiàn)
這篇文章主要介紹了Pandas 缺失數(shù)據(jù)處理的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11
python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5時(shí)間控件QTimer詳細(xì)使用方法與實(shí)例
這篇文章主要介紹了python GUI庫(kù)圖形界面開(kāi)發(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

