10.回圈陳述句
? ? 對于回圈陳述句,Python僅提供了while和for兩個,并未像其他編程語言一樣提供for...each/do...while/while...do等,
10.1 while回圈
? ? while在Python中的基本格式如下所示:
while condition:
doSomething
? ? 示例代碼如下所示:
startNum,endNum=0,5
while startNum< endNum:
print(f"cur start number is {startNum}")
startNum+=1
輸出結果如下所示:
cur start number is 0
cur start number is 1
cur start number is 2
cur start number is 3
cur start number is 4
10.2 for回圈
1.基本for回圈
? ? 在Python中for回圈的基本格式如下所示:
for item in [串列、元組、字典、集合、字符等]:
doSomething
? ? 示例代碼如下所示:
a={1,2,3,4,5}
for item in a:
print(f"current item is {item}")
輸出結果如下所示:
current item is 1
current item is 2
current item is 3
current item is 4
current item is 5
2.for..else回圈
? ? for...else表示for中的回圈正常完成之后,再運行else中的陳述句,其基本語法格式如下所示:
for item in [串列、元組、字典、集合、字符等]:
doSomething
else:
doSomething
? ? 有時候我們需要判斷程式回圈是否正常退出,還是中途退出,可以使用下面的代碼:
a = [1, 2, 3, 4]
flag = True
for i in a:
if i == 2:
flag = False
break
if flag:
print('yes')
else:
print('no')
? ? 針對以上這種寫法,可以使用for...else來簡化寫法,如下所示:
a = [1, 2, 3, 4]
for i in a:
if i == 2:
break
else:
print('yes')
print('no')
? ? 既然Python提供了兩種形式的回圈陳述句,那兩者有什么區別,何時采用while回圈,何時采用for回圈了?
當回圈迭代次數不確定時,使用while回圈,回圈迭代次數確定時,使用for回圈
10.3 中斷陳述句
? ? 在使用回圈陳述句時,當滿足某個條件之后,回圈則會自動停止,但如果想提前退出回圈時,則可以使用中斷陳述句,常用的中斷陳述句為
- break:中斷整個回圈,即滿足條件時,則立即中止回圈,后續回圈不再繼續
- continue:中斷本次回圈,即滿足條件后,則中止當前的回圈,后續滿足條件時繼續回圈
? ? 示例代碼如下所示:
print("break 回圈")
for i in range(6):
if i == 3:
break
print(f"current value is {i}")
print("continue 回圈")
for i in range(6):
if i == 3:
continue
print(f"current value is {i}")
輸出結果如下所示:
break 回圈
current value is 0
current value is 1
current value is 2
continue 回圈
current value is 0
current value is 1
current value is 2
current value is 4
current value is 5
10.4 遍歷容器類資料
1.range()函式
? ? range()函式常用于生成一系列的數字,其基本使用格式如下所示:
range(start,end,step)
- start:開始值
- end:結束值
- step:為步長,可以為正值,也可以為負值,也可以省略,當省略時,默認步長為1
- 使用range()函式生成資料,也遵循含前不含后,如range(0,3),生成的資料為0,1,2
? ? 示例代碼如下所示:
list(range(0,10,2))
# 輸出結果
[0, 2, 4, 6, 8]
list(range(10,0,-2))
# 輸出結果
[10, 8, 6, 4, 2]
2.遍歷字串資料
? ? 字串可以看成是很多單個字符組成的一串資料,因為也是可以進行迭代回圈的,示例如下所示:
for i in "abcdef":
print(f"current char is {i}")
輸出結果如下所示:
current char is a
current char is b
current char is c
current char is d
current char is e
current char is f
3.遍歷元組
? ? 示例代碼如下所示:
for i in tuple(range(0,5)):
print(f"current value is {i}")
輸出結果如下所示:
current value is 0
current value is 1
current value is 2
current value is 3
current value is 4
4.遍歷串列
? ? 示例代碼如下所示:
for i in list(range(0,5)):
print(f"current value is {i}")
輸出結果如下所示:
current value is 0
current value is 1
current value is 2
current value is 3
current value is 4
5.遍歷集合
? ? 示例代碼如下所示:
for i in set(range(0,5)):
print(f"current value is {i}")
輸出結果如下所示:
current value is 0
current value is 1
current value is 2
current value is 3
current value is 4
6.遍歷字典
? ? 示例代碼如下所示:
dic={
"a":1,
"b":2,
"c":3,
"d":4,
}
for k,v in dic.items():
print(f"key is {k} , value is {v}")
輸出結果如下所示:
key is a , value is 1
key is b , value is 2
key is c , value is 3
key is d , value is 4
本文地址:https://www.cnblogs.com/surpassme/p/12975408.html
本文同步在微信訂閱號上發布,如各位小伙伴們喜歡我的文章,也可以關注我的微信訂閱號:woaitest,或掃描下面的二維碼添加關注:

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/141667.html
標籤:Python
上一篇:(高考標準分)資料擬合==>多項式方程==>excel公式算成績(標準分)
下一篇:Python基礎-11函式
