本文将参考全国青少年软件编程等级考试Python/ target=_blank class=infotextkey>Python编程一级标准,主要讲解for循环语句基础内容,如何简化代码等内容。
首先我们来看下在Scratch中2种方式来绘制五角星的实例效果:
顺序结构
循环结构
同样是画五角星,2种方式有什么不同呢?
聪明的你已经发现了: 2种方式画出的效果是一样的,第二种方式的代码更简洁。
如何精简代码?
重复的代码是如何被精简的呢?
认识for循环结构
for 循环语句的一般格式为:
for 循环一般格式
for 循环是Python中经常使用的循环结构。for 语句用于对序列(例如字符串、元组或列表)或其他可迭代对象中的元素进行迭代。也可以理解为将可迭代的对象从迭代器里面按照一定的规则(比如一个一个、隔一个等)取出,然后进行相关操作的过程。
根据for循环语句的构造,我们可以将Python代码中的绘制五角星代码进行缩减改造。
import turtle # 引入turtle库 改造前
t = turtle.Pen() # 新建一个画笔
t.forward(200) #向前移动200步
t.right(144) #向右移动144度
t.forward(200)
t.right(144)
t.forward(200)
t.right(144)
t.forward(200)
t.right(144)
t.forward(200)
t.right(144)
import turtle # 引入turtle库
t = turtle.Pen() # 新建一个画笔
for i in range(5):
t.forward(200)
t.right(144)
我们引入for 循环后,将重复的代码部分进行了有效的精简。
初步了解for 循环后,我们一起来看看for 循环的威力,绘制一下复杂的螺旋线
复杂螺旋线
import turtle # 导入turtle 库
turtle.bgcolor('black') # 设置黑色背景
t = turtle.Pen()
t.speed(0)
colors=['red','yellow','blue','orange','green','purple']
for i in range(500): # 循环体要执行500次。变量i不仅控制循环次数,还要控制取色和步长。i将遍历0~499范围中的每一个数字。
t.pencolor(colors[i%4])
t.forward(0.6*i)
t.left(180/5)
t.hideturtle( ) # 隐藏海龟