Python中使用turtle繪製棋盤詳解
阿新 • • 發佈:2018-11-30
效果
實現
原始碼
import turtle #宣告棋盤的單元格寬度為30,數量為18 width = 30 num = 18 #設定畫布大小 turtle.screensize(1200,900,"green") #宣告列表來存取座標 x1 = [(-400,400),(-400+width*num,400)] y1 = [(-400,400),(-400,400-width*num)] #獲取畫筆 t = turtle.Pen() #設定畫筆速度(1-10)越大速度越快 t.speed(8) #設定畫筆顏色 t.pencolor("red") #迴圈繪製橫向線 for i in range(0,19): t.penup() t.goto(x1[0][0],x1[0][1]-30*i) t.pendown() t.goto(x1[1][0],x1[1][1]-30*i) #迴圈繪製縱向線 for i in range(0,19): t.penup() t.goto(y1[0][0]+30*i,y1[0][1]) t.pendown() t.goto(y1[1][0]+30*i,y1[1][1]) #隱藏畫筆 t.hideturtle() #保證執行視窗不被關閉 turtle.done()
講解
在繪製橫向線的迴圈裡:
當i=0
執行penup()讓畫筆擡起
執行goto()讓筆挪到執行位置
因為x1是列表,所以x軸的座標x1[0][0]就是列表中的第一個元素的第一個值,即-400
y軸的座標x1[0][1]-30*i就為列表x1中的的第一個元素的第二個值,即400-0*30=400
所以筆會首先挪到(-400,400)
此時筆來到①點,此時執行pendown()畫筆會落下
然後再移動到②點,因為此時筆已經落下,所以會畫出①②這條線。
同理i=1時畫出③④這條線。
同理豎線的繪製也是如此。