python for循环嵌套if遍历_Python基础-5-for循环可迭代对象的遍历,循环嵌套,循环代码的优化技巧,推导式的创建...

1、for循环和可迭代对象遍历

for 循环通常用于可迭代对象的遍历

for 变量 in 可迭代对象:

循环体语句

python包含以下几种可迭代对象:1、序列(字符串、列表、元组);2、字典;3、迭代器对象(iterator);4、生成器函数(generator)

2、字典的遍历

for x in d.keys()

for x in d.values()

for x in d.items()

3、range对象 range是一个迭代器对象

4、1~100奇、偶数和

sum_all=0

sum_odd=0

sum_even=0

for x in range(100):

sum_all+=x

if x%2==1:

sum_odd+=x

else:

sum_even+=x

print(‘1~100累加总和{0},奇数和{1},偶数和{2}’,format(sum_all,sum_odd,sum_even))

4、循环嵌套

for x in range(5):

for y in range(5): #每行有5个x,x从0开始有5个

print(x,end=’\t’)

print(’\n’) #起到换行作用

结果:

00000

11111

22222

33333

44444

5、九九乘法表

for m in range(1,10):

for n in range(1,m+1): #只显示下三角,n 的值不大于m

print('{0}*{1}={2}'.format(m,n,m*n),end='\t')

print() #起到换行作用

6、break 语句可用于while和for循环。当有嵌套循环时,break语句只能跳出最近一层的循环。

7、while、for 语句可以附带一个else语句(可选)。如果for、while语句没有被break语句结束,则执行else语句,否则不执行。

while 条件表达式:

循环体

else:

语句块

8、循环代码优化

准则:

1、尽量减少循环内不必要的计算;

2、嵌套循环中,尽量减少内层循环的计算,尽可能向外提;

3、局部变量查询较快,尽量使用局部变量。

其他优化手段:

1、连接多个字符串,使用join()函数而不是+

2、列表进行元素的插入和删除,尽量在列表的尾部操作

9、zip()的并行迭代

names={‘高淇,‘高老二’,‘高老三’,‘高老四’’}

ages={18,16,20,25}

jobs={‘老师’,‘程序员’,‘公务员’}

for name,age,job in zip(names,ages,jobs):

print(’{0}-{1}-{2}’.format{name,age,job})

for i in range(3):

print{’{0}-{1}-{2}’.format(names[i],ages[i],jobs[i])}

10、推导式穿件序列_列表推导式_字典推导式

cells=[(row,col)for row in range(1,10) for col in range(1,10)]

print(cells)

生成器推导式(生成元组)

(x for x in range(1,100) if x%9==0)

一个生成器只能运行一次。第一次迭代可以得到数据,第二次迭代发现数据已经没有了。

gnt=(x for x in range(4))

print(tuple(gnt))

print(tuple(gnt))

结果:(0,1,2,3)

() 空的

11、画多个同心圆环

t=turtle.Pen()

t.speed(0)

t.width(4)

my_colors=(‘red’,‘green’,‘yellow’,‘black’)

for i in range(100): #0,1,2,3,4

t.penup()

t.goto(0,-i10) #0,-100,-200,-300,-400

t.pendown()

t.color(my_colors[i%len(my_colors)])

t.circle(15+i10) #100,200,300,400,500

turtle.done() #执行完串口依旧在

12、函数遇到return()结束

原文链接:https://blog.csdn.net/wang_chao118/article/details/106871947

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值