提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
目录
- 循环代码优化手段
- 推导式创建序列
- 联系
前言
学习循环手段后,我们需要进一步提高运算速率,掌握代码的优化手段是必要的.
提示:以下是本篇文章正文内容,下面案例可供参考
一、循环优化手段
1.zip 并行迭代
zip函数对多个序列进行迭代.
示例:
names = ("lyf","dzq")
ages = (18,19)
for name,age in zip(names,ages):
print("{0},{1}".format(name,age))
二、推导式创建序列
将循环和条件判断结合,从而避免冗长的代码
1.列表推导式
[表达式 for item in 可迭代对象 if 条件判断
[x for x in range(1,5)]
[x*2 for x in range(1,20)if x%5==0]
[a for a in "abcde"]
2.字典推导式
{key:value for 表达式 in 可迭代对象}
my_text = "i love you, i love sxt, i love gaoqi"
char_count = {c:my_text.count(c) for c in my_text}
3.集合推导式
{表达式 for item in 可迭代对象}
{x for x in range (1,100) if x%9 == 0}
4.生成器推导式
g = (x for x in range (1,100) if x%9==0)
for x in g:
print(x,end="")
三.综合练习
#同心圆
import turtle
turtle.pen()
for i in range(5): #0 1 2 3 4
turtle.pen()
turtle.goto(0,-i*10)
turtle.pendown()
turtle.circle(15+i*10)
#画棋盘格
import turtle
turtle.goto(0, 120)
for i in range (12):
turtle.penup()
turtle.goto(10+10*i,120)
turtle.pendown()
turtle.penup()
turtle.goto(10+10 * i, 0)
turtle.pendown()
turtle.goto(10+10*i,120)
print()
turtle.penup()
turtle.goto(0,0)
turtle.pendown()
turtle.goto(120, 0)
for i in range(12):
turtle.penup()
turtle.goto(120, 10+10*i)
turtle.pendown()
turtle.penup()
turtle.goto(0, 10+10 * i)
turtle.pendown()
turtle.goto(120, 10+10 * i)
print()
turtle.done()
总结
以上就是今天要讲的内容,本文仅仅简单介绍了循环优化.