- for循环:让代码重复执行
一、for循环
- 让代码重复执行
-
语法
for 变量 in 序列: 循环体
-
说明
for -关键字;固定写法 变量 -变量名(已经定义过的变量或者没有定义过的都可以) in -关键字;固定写法 序列 -容器型数据类型的数据(可以同时保存多个值) 例如:字符串,列表,字典,元组,集合,迭 代器,生成器,rang : -固定写法 循环体 -结构上,就是和for保持一个缩进的一条或者多条语句(至少一条) 逻辑上,循环体就是要重复执行的代码
-
循环原理
- 让变量去序列中取值,一个一个的取,取完为止,每取一个值就执行一次循环体 如果要控制for循环循环次数,只需要控制序列中元素的个数
举例:
#举例:控制程序打印5次'hello world'
for i in '12345':
print(i)
print('hello world')
二、range函数
-
本质:在一个容器中创建等差数列
-
用法:
range(N) - 创建[0,N)的等差数列,差是1
range(M,N) - 创建[M,N)的等差数列,差是1
range(M,N,step) - 创建[M,N)的等差数列,差是step
举例:
#练习:使用range函数创建以下等差数列
# 11 12 13 14 15
# 11 13 15 17 19
# -2 -1 0 1 2
# 0 5 10 15 20
# 10 8 6 4 2
#代码:
for i in range(11,16):
print(i,end=',')
print()
for i in range(11,20,2):
print(i,end=',')
print()
for i in range(-2,3):
print(i,end=',')
print()
for i in range(0,21,5):
print(i,end=',')
print()
for i in range(10,1,-2):
print(i,end=',')
三、循环应用
一、累计求和
第一步:定义一个保存最后结果的变量,默认值为0 第二步:使用循环获取需要求和的每一个数据 第三步:每取到一个数据,就向保存最后数据的变量中加上一个数据
举例:
#案例一:求1到100和
sum = 0
for i in range(1,101):
sum += i
print(sum)
#案例2:求100~200中所有能被3整除但是不能被5整除的和
num = 0
for i in range(100,201):
if i%3==0 and i%5!=0:
num += i
print(num)
#案例3:求分数列表中所有学生的总分
scores = [90, 45, 78, 92, 89, 74, 50, 91, 99, 80, 87, 63, 82]
sum_scores = 0
for i in scores:
sum_scores += i
print(sum_scores)
二、统计个数
#案例1:统计不及格的人数
scores = [90, 45, 78, 92, 89, 74, 50, 91, 99, 80, 87, 63, 82]
m = 0
for i in scores:
if i<60:
m+=1
print(m)
#案例2:统计100内能被3整除的个数
num = 0
for i in range(0,100,3):
num +=1
print(num)