您好,登錄后才能下訂單哦!
本文主要研究的是Python編程turtle的實例,繪制一個七彩蟒蛇。。具體如下。
第2周的課后練習里,有一道題目,要求修改“蟒蛇繪制”程序,對Python 蟒蛇的每個部分采用不同顏色,繪制一條彩色蟒蛇。
原蟒蛇繪制程序如下:
因為剛開始學Python,不太熟悉,所以自己加了一些注釋,方便理解。
#蟒蛇繪制 import turtle def drawSnake(rad,angle,len,neckrad): for i in range(len): turtle.circle(rad,angle) #畫圓 rad:圓半徑 angle:圓弧度 turtle.circle(-rad,angle) #運行軌跡右側rad遠的地方繪制圓 turtle.circle(rad,angle/2) turtle.fd(rad) #表示直線爬行,forward,參數表示爬行的距離 turtle.circle(neckrad+1,180) turtle.fd(rad*2/3) def main(): turtle.setup(1300,800,0,0) #設置窗口寬+高+起始位置 pythonsize = 30 turtle.pensize(pythonsize) #設置筆的寬度 turtle.pencolor("blue") #設置筆的顏色 turtle.seth(-40) #設置筆的起始角度 drawSnake(40,80,5,pythonsize/2)
通過仔細分析了該代碼,發現這段代碼中畫筆的顏色,是通過pencolor()來設置,如果想要將顏色變為彩色,顯然不能再用這種方法,因此我想到了用列表來解決這個問題,于是在drawSnake里創建一個名為colors的列表變量并且在列表中放置6種顏色,如下所示:
colors = [“red”,”orange”,”yellow”,”green”,”cyan”,”blue”]
在此之前呢,因為原先的程序里,len的值是5,因此畫出來的蟒蛇的身體只有五部分,為了顯示為七彩,特地將len的值改為6.
在for循環里,在繪畫之前,增加了一條語句,用來設置畫筆的顏色:
turtle.color(colors[i])
colors[i]中,i和for循環里的是同一個變量,當i從0變化到5,相應的,color()就會從前面所添加的、名為colors的顏色名稱列表中選取一種顏色,設置為畫筆的顏色。
而蟒蛇的頭部,則利用turtle.color(“purple”)設置為第7種顏色。
運行之后,我發現turtle每次繪圖,都是從畫板的中心開始的,我覺得不太好看,于是想找到一種方法能夠改變繪圖的起點,目前我找到的方法是,利用penup(),goto(),pendown()命令來改變畫筆起點的位置,如下所示:
turtle.penup()
turtle.goto(-350,0)
turtle.pendown()
如果后續再發現更好的方法,再更新。
一條七彩的蟒蛇就繪制好啦~
#蟒蛇繪制 import turtle def drawSnake(rad,angle,len,neckrad): colors = ["red","orange","yellow","green","cyan","blue"] for i in range(len): turtle.color(colors[i]) turtle.circle(rad,angle) turtle.circle(-rad,angle) turtle.color("purple") turtle.circle(rad,angle/2) turtle.fd(rad) turtle.circle(neckrad+1,180) turtle.fd(rad*2/3) def main(): turtle.setup(1300,800,0,0) turtle.penup() turtle.goto(-350,0) turtle.pendown() pythonsize = 30 turtle.pensize(pythonsize) turtle.seth(-40) drawSnake(40,80,6,pythonsize/2) main()
結果展示:
總結
以上就是本文關于Python實現七彩蟒蛇繪制實例代碼的全部內容,希望對大家有所幫助。感興趣的朋友可以繼續參閱本站其他相關專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。