循环语句
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源创计划”,欢迎正在阅读的你也加入,一起分享。