for循环的基础语法

for 临时变量 in 待处理数据集:
	循环满足时执行的代码
name = "itxixi"

for x in name:
    # 将name的内容,挨个取出赋值于x临时变量
    # 就可以在循环体内对x进行处理
    print(x)
# 运行结果:
i
t
x
i
x
i

for循环注意点
1.无法定义循环条件,只能被动取出数据处理
2.要注意,循环内的语句,需要有空格缩进

for练习

查看字符串中a的数量

name = "itxixi is a brand of itcast"
# 定义一个变量来统计有多少个字母a
num = 0
for x in name:
    if x == 'a':
       num += 1

print(f"a的数量是:{num}")
# 运行结果
a的数量是:3

range语句

语法1
range(num)
获取一个从0开始,到num结束的数字序列(不含num本身)
如range(5)取得的数据是:[1,2,3,4]

语法2
range(num1,num2)
获得一个从num1开始,到num2结束的数字序列(不含num2本身)

range(5,10)取得的数据是:[5,6,7,8,9]

语法3
range(num1,num2,step)
获得一个从num1开始到num2结束的数字序列(不包含num2本身)
数字之间的步长,以step为准(step默认为1)
如,range(5,10,2)取得的数据是:[5,7,9]

# range语法1 range(num)
for x in range(10):
    print(x)

# 语法2 range(num1,num2)
for x in range(5, 10):
    print(x)

# 语法3 range(num1,num2,stap)
for x in range(0, 10, 3):
    print(x)

可以通过range()控制for循环执行的次数

for x in range(10):
    print("xixi")
    

for循环的变量作用域

for i in range(5):
    print(i)

print(i)

能访问到 但是编译器不确定i是否定义 不规范
想要规范可以在循环外定义i

i= 0
for i in range(5):
    print(i)

print(i)

for循环的嵌套

语法

# 注意缩进
for 临时变量 in 待处理的数据集(序列):
	循环满足条件应做的事情1
	循环满足条件应做的事情2
	循环满足条件应做的事情N
	...
	for 临时变量 in 待处理的数据集(序列):
		循环满足条件应做的事情1
		循环满足条件应做的事情2
		循环满足条件应做的事情N
for s in range(1,101):
    print(f"第{s}天")
    for b in range(1,11):
        print(f"扔第{b}坨shi")

循环中断:break和continue

continue关键字用于:中断本次循环,直接进入下次循环
可以用于while和for循环,效果一致

for i in range(1,100):
	语句1
	continue
	语句2

在循环内,遇到continue就会结束当次循环,进行下一次,所以语句2是不会被执行的
应用场景:在循环中,因为某些原因,临时结束本次循环

for i in range(1, 3):
    print("语句1")
    continue
    print("语句2")

运行结果:
语句1
语句1

执行两次语句1 不会执行语句2

for i in range(1, 3):
    print("语句1")
    for j in range(1, 3):
        print("语句2")
        continue
        print("语句3")

    print("语句4")
运行结果:
语句1
语句2
语句2
语句4
语句1
语句2
语句2
语句4

break

break关键字用于:直接结束循环
break可以用于:for循环和while循环,效果一致

for i in range(1, 100):
    语句1
    break
    语句2
    
语句3

循环中遇到break循环就结束了,所以只执行了语句1直接执行语句3了

for i in range(1, 100):
    print("xixi")
    break
    print("haha")

print("hehe")
运行结果:
xixi
hehe

遇到break不管循环还有多少次 直接结束

break和continue都只能对所在的循环生效

for i in range(1, 4):
    print("语句1")
    for j in range(1, 3):
        print("语句2")
        break
        print("语句3")

    print("语句4")
运行结果:
语句1
语句2
语句4
语句1
语句2
语句4
语句1
语句2
语句4


循环综合案例

import random

Sum = 10000
for i in range(1, 21):
    num = random.randint(1, 10)
    if Sum > 0:
        if num < 5:
            print(f"员工{i},绩效分{num},小于5,不发工资,下一位")
            continue
        if num > 5:
            Sum -= 1000
            print(f"向员工{i}发放工资1000元,账户余额还有{Sum}元")
    else:
        print(f"余额不足")
        break

for循环99乘法表

# 通过外层循环控制行数
for i in range(1, 10):
	# 通过内层循环控制每一行的数据
    for j in range(1, i+1):
        print(f"{i} * {j} = {i * j} \t", end='')

    print()
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐