Python循环语句
提醒:本文依据b站黑马python课整顿
链接指引 => 2022新版黑马程序员python教程
一、while循环的根底语法
语法:
while循环的注意事项
- 条件需提供布尔类型后果,True持续,False进行
- 空格缩进不能忘
- 请布局好循环终止条件,否则将有限循环
练习案例:求1-100的和
i = 1sum = 0while i <= 100: sum = sum + i i += 1print(sum)
猜数字案例:
设置一个范畴1-100的随机整数变量,通过while循环,配合input语句,判断输出的数字是否等于随机数
import randomran = random.randint(0, 10)flag = Truewhile flag: num = int(input('猜一下吧:')) if num == ran: flag = False print('猜对了') elif num > ran: print('猜大了') elif num < ran: print('猜小了')
1.1 while循环的嵌套
同判断语句的嵌套一样,循环语句的嵌套,要留神空格缩进。
- 基于空格缩进来决定档次关系
- 留神条件的设置,避免出现有限循环(除非真的须要有限循环)
打印九九乘法表案例:
i = 1while i <= 9: j = 1 while j <= i: print(f'{j} * {i} = {j * i}\t', end='') j += 1 i += 1 print('')
二、for循环的根底语法
语法:
for 长期变量 in 待处理数据集:
循环满足条件时执行的代码
练习案例:数一数有几个a
text = 'abba aab a'i = 0for x in text: if x == 'a': i += 1print(f'有 {i} 个a')
2.1 range语句
语法:
for 长期变量 in 待处理数据集(可迭代对象):
循环满足条件时执行的代码
语法中的:待处理数据集,严格来说,称之为:可迭代类型
可迭代类型指,其内容能够一个个顺次取出的一种类型
,包含:
字符串
- 列表
- 元组
- 等
# 语法1:range(num)# 如range(5)获得的数据是:[0, 1, 2, 3, 4]for v in range(10): print(v) # 语法2:range(num1, num2)# 如,range(5, 10)获得的数据是:[5, 6, 7, 8, 9]for v in range(5, 10): print(v) # 语法3:range(num1, num2, step)# 如,range(5, 10, 2)获得的数据是:[5, 7, 9]for v in range(3, 10, 2): print(v)
案例:有几个偶数
count = 0for v in range(100): if v % 2 == 0: count += 1print(f'一共有{count}个偶数')
2.2 变量作用域
for循环,将从数据集(序列)中取出的数据赋值给:长期变量
长期变量,在编程标准
上,作用范畴(作用域
,只限定在for循环外部
如果在for循环内部拜访长期变量:
实际上是能够拜访到的
在编程标准上,是不容许、不倡议这么做的
如果切实须要在循环外拜访循环内的长期变量,能够在循环外事后定义:
如图,每一次循环的时候,都会将取出的值赋予i变量。
- 因为i变量是在循环之前(外)定义的
- 在循环外拜访i变量是正当的、容许的
2.3 for循环的嵌套
案例:
i = 1for i in range(1, 101): print(f'明天向小美表白第{i}天') j = 0 for j in range(1, 11): print(f'送第{j}朵玫瑰花')print('表白胜利')
案例:99乘法表
i = 0for i in range(1, 10): for j in range(1, i+1): print(f'{j} * { i} = {i * j}', end='\t') print('')
三、while和for循环的区别
两者能实现的性能根本差不多,但仍有一些区别:
- while循环的循环条件是自定义的,自行管制循环条件
- for循环是一种”轮询”机制,是对一批内容进行”一一解决”
四、循环中断 : break和continue
4.1 continue
continue
关键字用于:中断本次循环,间接进入下一次循环continue
能够用于: for
循环和while
循环,成果统一
4.2 break
break关键字用于:间接完结所在循环
break能够用于: for循环和while循环,成果统一
注意事项:
continue和break,在for和while循环中作用统一
在嵌套循环中,只能作用在所在的循环上,无奈对下层循环起作用
五、综合案例:
发工资:
# 总工资import randomall = 10000num = 1000for v in range(0,20): jx = random.randint(1, 10); if jx < 5: print(f'员工{v},绩效分{jx},不满足') continue if all >= 1000: all -= 1000 print(f'员工{v},发工资,工资余额{all}') else: print(f'工资余额0') break
总结
以上就是Python循环语句,之后会继续更新,欢送大家点赞关注呀~~