申宇飛
(山西省長治市上黨區第一中學校,山西長治 046000)
在我國教育發展在各地出現一些不均衡的現象,我校所處的地區,經濟水平相對落后,學生在編程上的學習相比大城市的學生存在較大差距,學生們在上高中之前普遍未學習過編程,存在基礎較差等問題,編程是教學的重點也是難點,在過去的教學中,通過生搬硬套的教學方法不僅沒有幫助學生更好的學習并且理解編程,反而使同學們產生了畏難情緒,對編程失去信心。
對于我們學生的學習現狀,那么我們該如何有效的解決這個問題,我們可以通過更好的引導方式來引導學生學習編程,海龜繪圖就是一款非常不錯的工具。
海龜繪圖是python標準庫中提供的模塊,非常適合引導青少年學習編程,之前同學們學不好編程其中一個很重要的問題就是,編寫好程序以后,程序執行的過程同學們沒有一個直觀的認識,對于一個初學者而言,在編寫程序中出錯是一個很難避免的問題,但是看不到程序執行的過程使同學們改錯困難,對編程失去興趣。但是海龜繪圖這個模塊,通過在畫布創建一只小海龜,隨著程序運行的過程,小海龜可以繪制出很對精美的圖形。
使用海龜繪圖只需要引入import turtle包即可,然后我們需要創建一個繪圖區域就是畫布turtle.screensize (canvwidth=None,canvheight=None,bg=None),在畫布的中心原點上默認有一只朝東方向的小海龜,這只小海龜相當于畫筆,通過turtle.pendown()使畫筆落下,那么畫筆移動時將畫線。turtle.penup()將畫筆抬起,那么畫筆移動時將不會畫線。turtle.pensize(width=None)設置畫筆的寬度。
通過turtle.forward(distance)控制海龜前進 distance指定的距離,方向為海龜的朝向。turtle.backward (distance)控制海龜后退distance指定的距離,方向與海龜的朝向相反。turtle.right(angle)與turtle.left(angle)設置海龜朝向右轉或左轉angle度。
我們要繪制一個簡單的正方形如圖1所示,位于原點的海龜前進100個像素,然后海龜朝向向左轉動90°,然后海龜再向前移動100像素,以此類推就可以看到一個正方形出現在我們面前。

圖1 正方形海龜運行軌跡圖
import turtle as t
t. forward (100),t.left(90)
t. forward (100),t.left(90)
t. forward (100),t.left(90)
t. forward (100)
我們可以通過以下代碼繪制正六邊型的平鋪圖形,如圖2所示,主要程序代碼如下:

圖2 正六邊型平鋪圖
import turtle as t
colPos=(-300,-300)
rowPos=colPos
row=5
col=8
for i in range(row):
t.up()
t.setposition(rowPos)
for j in range(col):
t.penup()
t.setposition(colPos)
t.pendown()
t.setheading(0)
for k in range(3):
t.forward(100)
t.left(60)
if k==1:
colPos=t.position()
t.up()
t.setposition(rowPos)
t.setheading(0)
for z in range(4):
t.forward(100)
t.left(60)
rowPos=t.position()
colPos=rowPos
使用海龜繪圖可以直觀的看到程序的執行過程,更方便學生理解、編寫、修改程序,通過繪制有趣的圖案,使學生逐漸對編程產生興趣,引導學生更加輕松愉快的打開編程世界的大門,在這種興趣的基礎上,不斷的探究信息技術的各個領域。