Python基本图形绘制之“蟒蛇绘制”
Python蟒蛇繪制
通過代碼分析對turtle庫的使用以及turtle程序語法元素做簡單的認(rèn)識
import turtle turtle.setup(650,350,200,200) turtle.penup() turtle.fd(-250) turtle.pendown() turtle.pensize(25) turtle.pencolor("purple") turtle.seth(-40) for i in range(4):turtle.circle(40,80)turtle.circle(-40,80) turtle.circle(40, 80/2) turtle.fd(40) turtle.circle(16,180) turtle.fd(40* 2/3) turtle.done()-
import
擴(kuò)充Python程序功能的方式,使用import保留字完成,引入了一個繪圖庫名叫turtle,采用< a >.< b >()編碼風(fēng)格,import<庫名>,<庫名>.<函數(shù)名>(<函數(shù)參數(shù)>)。 -
turtle.setup()
調(diào)整繪圖窗體在電腦屏幕中的布局,形如格式 turtle.setup(繪圖窗體寬度,繪圖窗體高度,窗體左上頂點x坐標(biāo),窗體左上頂點Y坐標(biāo))
第一行我們使用 import turtle 引入了海龜繪圖體系,第二行使用setup函數(shù)來設(shè)定了一個窗體,窗體的大小是寬度為650像素、高為350像素,它的位置大的左上角的坐標(biāo)是(200,200)說明當(dāng)前窗體與當(dāng)前屏幕的位置是在距離當(dāng)前屏幕左上角(200,200)的像素的地方
-
turtle.penup() / turtle.pendown()
penup與pendown同為畫筆控制函數(shù),penup意為“抬起畫筆”pendown意為“落下畫筆”,有起必有落。 -
turtle.fd()
fd為forward的簡寫,意為向前,所以fd(d)為運動控制函數(shù),控制海龜向前行進(jìn)。與 turtle.goto(x,y)、turtle.bk(d)、turtle.circle(r,angle) 同屬于turtle空間坐標(biāo)體系。
第三行代碼我們將畫筆抬起,第四行 fd(-250)讓海龜?shù)雇讼蚝笮羞M(jìn)250個像素,由于當(dāng)前畫筆抬起,所以畫布上不留下任何痕跡,之后pendown將畫筆落下,這幾行代碼相當(dāng)于我們將海龜?shù)奈恢糜衫L圖中心的原點變成了在圖像中左側(cè)的某一位置上。
-
pensize()/ pencolor()
size意為大小也就是海龜畫筆的寬度,color意為顏色即海龜畫筆的顏色,函數(shù)參數(shù)為顏色英文字符串形式。兩者皆為畫筆控制函數(shù) -
turtle.seth()
seth(angle)只改變當(dāng)前海龜?shù)男羞M(jìn)角度,并不行進(jìn),angle為絕對度數(shù)。與turtle.left()和turtle.right()同為turtle角度坐標(biāo)體系。不過后兩者的函數(shù)參數(shù)均為海龜角度。
第六行代碼我們設(shè)置畫筆的寬度為25像素,即“海龜?shù)难鼑?#xff0c;第七行設(shè)置畫筆的顏色為紫色。第八行改變海龜?shù)姆较?#xff0c;改為絕對的-40°方向,準(zhǔn)備啟動繪制python蟒蛇。
-
for <變量> in range (<參數(shù)>)
此形式為循環(huán)語句,按照一定次數(shù)循環(huán)執(zhí)行一組語句。例如 :for i in range (5):
print(i)這個循環(huán)語句的輸出結(jié)果為
0
1
2
3
4
接下來三行代碼是一個循環(huán),循環(huán)體中用了circle函數(shù)讓海龜走曲線,它使用40像素為半徑繪制80度的弧度,繪了80度后我們又以反向40為半徑繪制80度,形成了python蟒蛇的一個關(guān)節(jié),經(jīng)過四次循環(huán)我們繪制了蟒蛇的四個身體部分。
進(jìn)一步我們讓小海龜按照40像素的半徑,40度的方式繪制少半個弧形,進(jìn)而向前行進(jìn)40像素,構(gòu)成了python蟒蛇的脖子部分,最后我們采用半圓形和繼續(xù)向前進(jìn)的一個直線繪制整個python蟒蛇整個頭部。代碼最后我們用到了
- turtle.done()
這個函數(shù)有一個作用,如果我們是一個文件式描寫方法,寫了turtle.done作為整個turtle繪制的最后一部分,程序運行之后,程序不會退出,需要手動關(guān)閉窗體退出,如果我們希望運行后自動退出,去掉這行代碼即可。
import更多用法及比較
import<庫名>
<庫名>.<函數(shù)名>(<函數(shù)參數(shù)>)
例如:
import turtle
turtle.penup()
這種方法不會出現(xiàn)函數(shù)重名問題,即不會出現(xiàn)庫中已有函數(shù)名可能會與變量名重復(fù)導(dǎo)致代碼運行錯誤,但由于每個函數(shù)都要寫庫名,程序代碼會過于繁瑣。
form<庫名>import*
<函數(shù)名>(<函數(shù)參數(shù)>)
例如:
form turtle import*
penup()
這種方法去掉了庫中函數(shù)引用的時候需要帶的庫名,解決了代碼繁瑣,但是在引用多個庫的情況下可能會存在函數(shù)重名問題.
import<庫名>as<庫別名>
<庫別名>.<函數(shù)名>(<函數(shù)參數(shù)>)
例如:
import turtle as t
t.penup()
這種方法顧名思義將繁瑣難寫的庫名用其他字符代替,大大簡潔了代碼書寫,又可以避免函數(shù)重名問題的發(fā)生。
總結(jié)
以上是生活随笔為你收集整理的Python基本图形绘制之“蟒蛇绘制”的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 6寸排气扇按装在玻璃圆孔内用玻璃胶后多久
- 下一篇: Python库引用import多种用法及