Python中,for循环用于遍历一个迭代对象的所有元素,我们暂且可以将迭代对象想象成一个对象集合,一个个遍历里面的元素。
语法格式:for...in...
for var in sequence:
代码块
示例
nameList = ["ali001", "ali002", "ali003", "ali004", "ali005"]
for name in nameList:
print(name)
这个示例遍历nameList列表并打印出每一个元素,结果如下
ali001
ali002
ali003
ali004
ali005
- range()函数
range()函数可创建一个列表,一般用于for循环
函数原型:range(start, end, step)
参数说明:
start,计数从start开始,默认是从0开始
end,计数到end-1结束,不包括end
scan,步长,即每次跳跃的间距,默认为1
示例
listA = range(0,5)
listB = range(10)
listC = range(1,10,2)
print(listA)
print(listB)
print(listC)
结果输出
range(0, 5)
range(0, 10)
range(1, 10, 2)
range()函数返回的是一个序列对象,而不是列表类型,所以输出的时候不会打印列表,我们使用list()函数将序列对象转换为列表
print(list(listA))
print(list(listB))
print(list(listC))
结果输出
[0, 1, 2, 3, 4]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[1, 3, 5, 7, 9]
- 赋值运算符
符号 | 描述 | 含义 |
= | 赋值 | a = b,将b的值赋值给a |
+= | 相加后赋值 | a += b,等效于a = a + b,将a+b的结果赋值给a |
-+ | 相减后赋值 | a -= b,等效于a = a - b,将a-b的结果赋值给a |
*= | 相乘后赋值 | a *= b,等效于a = a * b,将a*b的结果赋值给a |
/= | 相除后赋值 | a /= b,等效于a = a / b,将a/b的结果赋值给a |
%= | 取余后赋值 | a %= b,等效于a = a % b,将a%b的结果赋值给a |
**= | 幂运算后赋值 | a**= b,等效于a = a ** b,将a**b的结果赋值给a |
//= | 取整除后赋值 | a //= b,等效于a = a // b,将a//b的结果赋值给a |
- 综合示例1
计算1+2+3+...+100
分析:
(1)使用range函数生成序列1,2,3,...,100
(2)定义sum变量,用于存储结果,初始值为0
(3)使用for循环,取出序列中值,每次与sum进行累加
代码:
sum = 0
for n in range(1,101):
sum += n
print("1+2+3+...+100的结果为:",sum)
输出结果
1+2+3+...+100的结果为: 5050
- 综合示例2
打印九九乘法表
分析:
(1)9*9乘法表需要一个多行多列的效果
第1行 1*1=1
第2行 2*1=2 2*2=4
第3行 3*1=3 3*2=6 3*3=9
...
第9行 9*1=9 9*2=18 9*3 =27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81
(2)共9行,每一行为行号与另一个数相乘得到的算式,与行号相乘的数从1开始,大于行号结束,如第5行,行号是5,算式为5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
(3)使用range函数生成序列1,2,3,...,9,代表行号
(4)每一行算式打印的时候,print()函数携带end参数,输出以空格结束,不换行
(5)一行算式打印完成以后,换行
代码:
for nrow in range(1,10):
for col in range(1,nrow+1):
print('%s*%s=%s' % (nrow,col,nrow*col), end=' ')
print("\r")
结果输出:
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81