DAY 5
for 循环和可迭代对象遍历
for 循环通常用于可迭代对象的遍历。for 循环的语法格式如下:
for 变量 in 可迭代对象:
循环体语句
可迭代对象
- 序列。包含:字符串、列表、元组
- 字典
- 迭代器对象(iterator)
- 生成器函数(generator)
- 文件对象
#测试for循环
d = {
'name':'Lee','age':18,'address':'北京'}
for x in d: #默认遍历字典所有的key
print(x)
for x in d.keys(): #遍历字典所有的key
print(x)
for x in d.values(): #遍历字典所有的值
print(x)
for x in d.items(): #遍历字典所有的键值对
print(x)
range对象
range 对象是一个迭代器对象,用来产生指定范围的数字序列。格式为:
range(start, end [,step])
生成的数值序列从start开始到end结束(不包含 end)。若没有填写 start,则默认从 0 开始。step 是可选的步长,默认为1。
#计算1-100之间数字的累加和;计算1-100之间偶数的累加和,计算1-100之间奇数的累加和。
sum_all=0
sum_jishu=0
sum_oushu=0
for x in range(101):
sum_all+=x
if x%2 == 0:
sum_oushu+=x
else:
sum_jishu+=x
print(sum_all)
print(sum_oushu)
print(sum_jishu)
嵌套循环
一个循环体内可以嵌入另一个循环,一般称为“嵌套循环”,或者“多重循环”。
#利用嵌套循环打印九九乘法表
for x in range(1,10):
for y in range(1,x+1):
z=x*y
print('{0}*{1}={2}'.format(x,y,z),end='\t')
print()
结果:
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