本文將參考全國青少年軟件編程等級考試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 循環后,我們一起來看看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( ) # 隱藏海龜