在python中有一個很有趣的庫,叫做turtle,翻譯成中文就是海龜。這個庫可以用來畫一些有趣的圖案。今天小編就帶來了一個使用海龜繪圖法繪制編程獅logo的代碼,并在代碼后介紹一些簡單的使用心得,感興趣的小伙伴趕緊copy代碼跑起來吧!
import turtle as t
def hexagon(): #畫獅子的六邊形的臉,并上色
t.begin_fill()
t.right(60)
t.forward(210)
t.right(60)
t.forward(210)
t.right(60)
t.forward(210)
t.right(60)
t.forward(210)
t.right(60)
t.forward(210)
t.right(60)
t.forward(210)
t.end_fill()
def face(): #畫獅子的臉部細(xì)節(jié)(把臉部細(xì)節(jié)當(dāng)成一個多邊形畫)
t.pensize(2)
t.color("black","black")
t.begin_fill()
t.right(60)
t.forward(103)
t.right(120)
t.forward(105)
t.left(90)
t.forward(180)
t.right(90)
t.forward(100)
t.right(90)
t.forward(180)
t.left(90)
t.forward(105)
t.left(150)
t.forward(105)
t.right(60)
t.forward(140)
t.left(60)
t.forward(50)
t.right(60)
t.forward(55)
t.left(90)
t.forward(45)
t.left(90)
t.forward(55)
t.right(60)
t.forward(50)
t.left(60)
t.forward(140)
t.right(60)
t.forward(105)
t.end_fill()
def zongmao(): #畫獅子的鬃毛
t.begin_fill()
t.forward(210)
t.left(90)
t.circle(210,120)
t.left(30)
t.forward(210)
t.left(120)
t.forward(210)
t.end_fill()
t.backward(210)
t.left(60)
t.penup()
t.goto(60,180)
t.pendown()
t.color("black","#f9e052")
t.pensize(10)
hexagon()
face()
t.penup()
t.goto(60,180)
t.pendown()
t.right(30)
t.color("black","#fe6a00")
t.pensize(10)
for i in range(6):
zongmao()
心得體會:
海龜繪圖法之所以稱為海龜繪圖法,就是因為它的筆像一個海龜一樣,通過爬行畫出內(nèi)容,只要把自己想象為那只海龜,就知道什么時候左轉(zhuǎn),什么時候右轉(zhuǎn),需要轉(zhuǎn)動多少度,需要走多少步了。
隨時注意筆的狀態(tài)(放下還是提起),這決定了你在移動海龜?shù)臅r候會不會在畫布上留下痕跡。
有些重復(fù)的動作,可以考慮封裝成函數(shù)來減少代碼量,當(dāng)畫的圖案比較復(fù)雜的時候,不封裝的代碼量會很恐怖。
對于初學(xué)者而言,很多函數(shù)的作用不清楚,可以對照教程進(jìn)行使用。