for循环
while 循环的循环条件是自定义的,自行控制循环条件
for循环是一种"轮询"机制,是对一轮内容进行"逐个处理"
for 临时变量 in 待处理数据集:
循环满足条件时执行的代码
无法定义循环条件,只能被动取出数据处理
要注意循环内的语句,需要空格缩进
语法中的待处理数据集,严格来说,称之为:序列类型 包括:字符串、列表、元组等
name = "python"
for i in name:
print(f"{i}",end="")
python
name = "数一数这些字里面有几个数这个字"
count = 0
for i in name:
if i == "数":
count += 1
print(count)
3
序列类型range
range 是一种序列类型,range类型用于表示不可变的整数序列。
可以调用内置函数range(类range的构造方法)创建range类型的对象,有三种调用方式:
1.range(stop)
2.range(start,stop)
3.range(start,stop,step)
其中
整数序列起始值默认为0,可以使用参数start指定;
可以使用参数stop指定整数序列的结束值,创建的range对象不包含stop值;
整数序列的步长的默认值是1,可以使用参数step进行指定。
内置函数range的返回值是一个迭代器对象,为了清楚地表示返回的迭代器对象所表示的整数序列,可以将其转换成列表。
print(range(6))
print(list(range(6)))
print(list(range(0,7,2)))
print(list(range(0,-20,-4)))
for i in range(10,100,5):
print(f"{i} ",end="")
print()
# 有几个偶数
count = 0
for i in range(1,50):
if i % 2 == 0:
count += 1
print(count)
range(0, 6)
[0, 1, 2, 3, 4, 5]
[0, 2, 4, 6]
[0, -4, -8, -12, -16]
10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95
24
for循环的变量作用域
for 临时变量 in 待处理数据集:
循环满足条件时执行的代码
临时变量,在编程规范上,作用范围(作用域),只限定在for循环内部
如果在for循环外部说临时变量,实际上是可以访问到的,在编程规范上,是不允许,不建议这么做的。
# 不建议 不规范
for i in range(6):
print(f"{i} ",end='')
print()
print(i) # 会读取for循环最后一个值
0 1 2 3 4 5
5
# 规范用法
i = 0
for i in range(6):
print(f"{i} ",end='')
print()
print(i) # 会读取for循环最后一个值
0 1 2 3 4 5
5
for循环的嵌套
for 临时变量 in 待处理数据集(序列):
循环满足条件时执行的代码
for 临时变量 in 待处理数据集(序列):
循环满足条件时执行的代码
注意缩进,嵌套for循环同样通过缩进确定层次关系
for循环和while循环可以相互嵌套使用
i = 0
for i in range(1,11):
print(f"今天是第{i}天,攒钱")
for j in range(1,6):
print(f"攒了{j}百块")
print(f"攒钱")
print(f"坚持了{i}天")
案例-九九乘法表
for i in range(1,10):
for j in range(1,i + 1):
print(f"{j} * {i} = {i*j}\t",end='')
print()
1 * 1 = 1
1 * 2 = 2 2 * 2 = 4
1 * 3 = 3 2 * 3 = 6 3 * 3 = 9
1 * 4 = 4 2 * 4 = 8 3 * 4 = 12 4 * 4 = 16
1 * 5 = 5 2 * 5 = 10 3 * 5 = 15 4 * 5 = 20 5 * 5 = 25
1 * 6 = 6 2 * 6 = 12 3 * 6 = 18 4 * 6 = 24 5 * 6 = 30 6 * 6 = 36
1 * 7 = 7 2 * 7 = 14 3 * 7 = 21 4 * 7 = 28 5 * 7 = 35 6 * 7 = 42 7 * 7 = 49
1 * 8 = 8 2 * 8 = 16 3 * 8 = 24 4 * 8 = 32 5 * 8 = 40 6 * 8 = 48 7 * 8 = 56 8 * 8 = 64
1 * 9 = 9 2 * 9 = 18 3 * 9 = 27 4 * 9 = 36 5 * 9 = 45 6 * 9 = 54 7 * 9 = 63 8 * 9 = 72 9 * 9 = 81