循環語句
python 中內置了兩種 循環方式
。
-
while -
for
while 循環
while循環的作用可以保證在指定的條件下可以重複執行某些語句,可能有點懵是吧,舉個例子:
i = 1
while i < 6:
print(i)
i += 1
PS E:\dreams\dream\markdown\python> & "C:/Program Files (x86)/Python/python.exe" e:/dreams/dream/markdown/python/app/app.py
1
2
3
4
5
可以看出,在 i<6
的情況下循環體會不斷重複執行。
break 語句
break 關鍵詞的作用就是在特定的條件下讓循環提前結束,如下代碼所示:
i = 1
while i < 6:
print(i)
if i == 3:
break
i += 1
continue 語句
除了可以讓循環提前整體結束,還可以提前結束某一次迭代,進行下一個迭代,如下代碼所示:
i = 0
while i < 6:
i += 1
if i == 3:
continue
print(i)
PS E:\dreams\dream\markdown\python> & "C:/Program Files (x86)/Python/python.exe" e:/dreams/dream/markdown/python/app/app.py
1
2
4
5
6
else 語句
可以在 while 後面跟上一個 else 語句,表示當 while 中斷後,執行該 else 語句,如下代碼所示:
i = 1
while i < 6:
print(i)
i += 1
else:
print("i is no longer less than 6")
PS E:\dreams\dream\markdown\python> & "C:/Program Files (x86)/Python/python.exe" e:/dreams/dream/markdown/python/app/app.py
1
2
3
4
5
i is no longer less than 6
for 循環
for 循環常用於迭代一個集合,如:(list,tuple,dict,set,string),python 中的 for 不像其他語言中的 for,它更像其他語言中的 迭代器方法
,如 C# 中的 foreach,如下面的例子:
fruits = ["apple", "banana", "cherry"]
for x in fruits:
print(x)
PS E:\dreams\dream\markdown\python> & "C:/Program Files (x86)/Python/python.exe" e:/dreams/dream/markdown/python/app/app.py
apple
banana
cherry
迭代 string
很多人沒想到,string 也是可以迭代的吧,本質上來說,string 就是一組 char 合成的,如下代碼所示:
for x in "banana":
print(x)
PS E:\dreams\dream\markdown\python> & "C:/Program Files (x86)/Python/python.exe" e:/dreams/dream/markdown/python/app/app.py
b
a
n
a
n
a
break 和 continue
和文章前面章節提到的一樣,除了在while中使用這兩個關鍵詞,for 中同樣可以使用,如下例子所示:
fruits = ["apple", "banana", "cherry"]
for x in fruits:
if x == "banana":
break
print(x)
fruits = ["apple", "banana", "cherry"]
for x in fruits:
if x == "banana":
continue
print(x)
PS E:\dreams\dream\markdown\python> & "C:/Program Files (x86)/Python/python.exe" e:/dreams/dream/markdown/python/app/app.py
apple
apple
cherry
range() 函數
有時候需要在 迭代
中獲取下標值,這個時候用 for 就不好使了,那怎麼辦呢?在 python 中可以使用 range()
來獲取指定範圍內的序列集合,然後通過下標來進行集合迭代,如下代碼所示:
fruits = ["apple", "banana", "cherry"]
for i in range(len(fruits)):
print("{0}:{1}".format(i,fruits[i]))
PS E:\dreams\dream\markdown\python> & "C:/Program Files (x86)/Python/python.exe" e:/dreams/dream/markdown/python/app/app.py
0:apple
1:banana
2:cherry
除了默認用 range 獲取返回數字集合,還可以指定 start - end
範圍段和 step
值,如下代碼所示:
for x in range(2, 6):
print(x)
for x in range(2, 10, 3):
print(x)
PS E:\dreams\dream\markdown\python> & "C:/Program Files (x86)/Python/python.exe" e:/dreams/dream/markdown/python/app/app.py
2
3
4
5
2
5
8
for 中的 Else
在 for 循環尾巴處使用 else 語句,表示當 for 迭代結束後執行該語句,代碼如下:
for x in range(6):
print(x)
else:
print("Finally finished!")
譯文鏈接:https://www.w3schools.com/python/python_while_loops.asp
本文分享自微信公衆號 - 一線碼農聊技術(dotnetfly)。
如有侵權,請聯繫 [email protected] 刪除。
本文參與“OSC源創計劃”,歡迎正在閱讀的你也加入,一起分享。