Python循环语句
提示:本文根据b站黑马python课整理
链接指引 => 2022新版黑马程序员python教程
一、while循环的基础语法
语法:
while循环的注意事项
- 条件需提供布尔类型结果,True继续,False停止
- 空格缩进不能忘
- 请规划好循环终止条件,否则将无限循环
练习案例:求1-100的和
i = 1
sum = 0
while i <= 100:
sum = sum + i
i += 1
print(sum)
猜数字案例:
设置一个范围1-100的随机整数变量,通过while循环,配合input语句,判断输入的数字是否等于随机数
import random
ran = random.randint(0, 10)
flag = True
while flag:
num = int(input('猜一下吧:'))
if num == ran:
flag = False
print('猜对了')
elif num > ran:
print('猜大了')
elif num < ran:
print('猜小了')
1.1 while循环的嵌套
同判断语句的嵌套一样,循环语句的嵌套,要注意空格缩进。
- 基于空格缩进来决定层次关系
- 注意条件的设置,避免出现无限循环(除非真的需要无限循环)
打印九九乘法表案例:
i = 1
while 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 = 0
for x in text:
if x == 'a':
i += 1
print(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 = 0
for v in range(100):
if v % 2 == 0:
count += 1
print(f'一共有{count}个偶数')
2.2 变量作用域
for循环,将从数据集(序列)中取出的数据赋值给:临时变量
临时变量,在编程规范
上,作用范围(作用域
,只限定在for循环内部
如果在for循环外部访问临时变量:
实际上是可以访问到的
在编程规范上,是不允许、不建议这么做的
如果实在需要在循环外访问循环内的临时变量,可以在循环外预先定义:
如图,每一次循环的时候,都会将取出的值赋予i变量。
- 由于i变量是在循环之前(外)定义的
- 在循环外访问i变量是合理的、允许的
2.3 for循环的嵌套
案例:
i = 1
for i in range(1, 101):
print(f'今天向小美表白第{i}天')
j = 0
for j in range(1, 11):
print(f'送第{j}朵玫瑰花')
print('表白成功')
案例:99乘法表
i = 0
for 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 random
all = 10000
num = 1000
for 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循环语句,之后会持续更新,欢迎大家点赞关注呀~~
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。