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,或扫描下面的二维码添加关注: