Python的turtle繪圖庫(kù)使用基礎(chǔ)
turtle庫(kù)是Python語(yǔ)言中一個(gè)很流行的繪制圖像的函數(shù)庫(kù),想象一個(gè)小烏龜,在一個(gè)x(橫軸)和y(縱軸)的坐標(biāo)系原點(diǎn),(0,0)位置開(kāi)始,它根據(jù)一組函數(shù)指令的控制,在這個(gè)平面坐標(biāo)系中移動(dòng),從而在它爬行的路徑上繪制了圖形。
turtle繪圖窗體布局
turtle的繪圖窗體是turtle的一個(gè)畫(huà)布空間,最小單位是像素

turtle.setup(width, height, startx, starty),setup()設(shè)置窗體大小及位置,它不是必須的,后兩個(gè)參數(shù)可選,不選時(shí)默認(rèn)在屏幕正中間 turtle空間坐標(biāo)系
絕對(duì)坐標(biāo):

turtle.goto(x, y),使海龜由當(dāng)前位置沿直線(xiàn)移動(dòng)到(x, y)處
海龜坐標(biāo):

絕對(duì)角度:

RGB色彩體系
RGB每種顏色取值范圍是0~255的整數(shù)或0~1的小數(shù)
默認(rèn)采用小數(shù)值,可切換為整數(shù)值
turtle.colormode(mode),mode為1.0,切換至小數(shù)值模式,mode為255,切換至整數(shù)值模式
turtle畫(huà)筆控制函數(shù)
- turtle.penup(),別名turtle.pu(),抬起畫(huà)筆,移動(dòng)時(shí)無(wú)痕跡
- turtle.pendown(),別名turtle.pd(),落下畫(huà)筆,移動(dòng)時(shí)有痕跡
- turtle.pensize(width),別名turtle.width(width),畫(huà)筆寬度
- turtle.pencolor(color),color為顏色字符串或r,g,b值,畫(huà)筆顏色,有三種形式
- 顏色字符串:turtle.pencolor(“purple”)
- RGB的小數(shù)值:turtle.pencolor(0.63, 0.13, 0.94)
- RGB的元組值:turtle.pencolor( (0.63, 0.13, 0.94) )
turtle運(yùn)動(dòng)控制函數(shù)
控制海龜行進(jìn):走直線(xiàn)或走曲線(xiàn),畫(huà)筆設(shè)置后一直有效,直到下次重新設(shè)置
- turtle.goto(x, y),使海龜由當(dāng)前位置沿直線(xiàn)移動(dòng)到絕對(duì)位置的(x, y)處
- turtle.forward(d),別名turtle.fd(d),海龜向前行進(jìn)距離d,d為行進(jìn)距離 (可以為負(fù)值)
- turtle.backward(d),別名turtle.bk(d),海龜沿著反方向運(yùn)行距離d
- turtle.circle(r, extent=None),根據(jù)半徑r繪制extent角度的弧形,r表示默認(rèn)圓心在海龜左側(cè)r距離的位置(負(fù)值表示右側(cè)),extent表示繪制角度,默認(rèn)是360度 (整圓)
turtle方向控制函數(shù)
控制海龜面對(duì)的方向:絕對(duì)角度或海龜角度
- turtle.setheading(angle),別名turtle.seth(angle) ,改變海龜行進(jìn)的方向,angle為絕對(duì)度數(shù)(0~360度,可以為負(fù))
- turtle.left(angle),海龜向左轉(zhuǎn),angle表示海龜角度(在海龜當(dāng)前行進(jìn)方向上旋轉(zhuǎn)的角度)
- turtle.right(angle),海龜向右轉(zhuǎn),angle表示海龜角度(在海龜當(dāng)前行進(jìn)方向上旋轉(zhuǎn)的角度)
其他:
turtle.done(),往往放在程序結(jié)尾,如果是文件式描寫(xiě)方法,程序運(yùn)行之后,不會(huì)自動(dòng)退出,需要手動(dòng)關(guān)閉窗體退出
turtle常用函數(shù)庫(kù)
在lib目錄下有一個(gè)turtle.py文件,這就是turtle的安裝目錄。官方文檔:https://docs.python.org/3/library/turtle.html
turtle庫(kù)畫(huà)筆狀態(tài)控制函數(shù)
| 函數(shù) | 描述 |
| penup() | pu() | up() | 提起畫(huà)筆,與pendown()配對(duì)使用 |
| pendown() | pd() | down() | 放下畫(huà)筆 |
| pensize() | width() | 設(shè)置畫(huà)筆線(xiàn)條的粗細(xì)為指定大小 |
turtle庫(kù)的畫(huà)筆運(yùn)動(dòng)的函數(shù)
| 函數(shù) | 描述 |
| forward() | fd() | 沿著當(dāng)前方向前進(jìn)指定距離 |
| backward() | bk() | back() | 沿著當(dāng)前相反方向后退指定距離 |
| right(angle) | rt(angle) | 向右旋轉(zhuǎn)angle角度 |
| left(angle) | lt(angle) | 向左旋轉(zhuǎn)angle角度 |
| goto(x, y) | setpos(x, y) | setposition(x, y) | 移動(dòng)到絕對(duì)坐標(biāo)(x, y)處 |
| setx() | 將當(dāng)前x軸移動(dòng)到指定位置 |
| sety() | 將當(dāng)前y軸移動(dòng)到指定位置 |
| setheading(angle) | seth(angle) | 設(shè)置當(dāng)前朝向?yàn)閍ngle的角度 |
| home() | 設(shè)置當(dāng)前畫(huà)筆位置為原點(diǎn),朝向東 |
| circle(step) | 繪制一個(gè)指定半徑、角度以及繪制步驟step的圓 |
| dot(r, color) | 繪制一個(gè)指定半徑r和顏色color的圓點(diǎn) |
| undo() | 撤銷(xiāo)畫(huà)筆最后一步動(dòng)作 |
| speed() | 設(shè)置的繪制速度,參數(shù)為0 - 10之間 |
turtle庫(kù)的控制畫(huà)筆和字體函數(shù)
| 函數(shù) | 描述 |
| color() | 設(shè)置畫(huà)筆的顏色 |
| pencolor() | 設(shè)置畫(huà)筆的顏色 |
| fillcolor() | 設(shè)置填充顏色 |
| begin_fill() | 填充圖形前,調(diào)用該方法 |
| end_fill() | 填充圖形結(jié)束 |
| filling() | 返回填充的狀態(tài),True為填充,F(xiàn)alse為未填充 |
| clear() | 清空當(dāng)前窗口,但不改變當(dāng)前畫(huà)筆的位置 |
| reset() | 清空當(dāng)前窗口,并重置位置狀態(tài)為默認(rèn)值 |
| screensize() | 設(shè)置畫(huà)面的長(zhǎng)和寬 |
| hideturtle() | 隱藏畫(huà)筆的turtle形狀 |
| showturtle() | 顯示畫(huà)筆的turtle形狀 |
| isvisible() | 如果turtle可見(jiàn),則返回Ture |
| write(str, font = None) | 輸出font字體的字符串 |
到此這篇關(guān)于Python的turtle繪圖庫(kù)使用基礎(chǔ)的文章就介紹到這了,更多相關(guān)Python turtle繪圖庫(kù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python利用IPython提高開(kāi)發(fā)效率
本文詳細(xì)介紹了在python中如何利用ipython提高代碼開(kāi)發(fā)效率,對(duì)大家使用python很有幫助,有需要的小伙伴們可以參考借鑒。2016-08-08
Python中處理字符串之islower()方法的使用簡(jiǎn)介
這篇文章主要介紹了Python中處理字符串之islower()方法的使用,是Python入門(mén)的基礎(chǔ)知識(shí),需要的朋友可以參考下2015-05-05
django虛擬環(huán)境(virtualenv)的創(chuàng)建
在使用django開(kāi)發(fā)項(xiàng)目的時(shí)候,一個(gè)環(huán)境只能對(duì)應(yīng)一個(gè)項(xiàng)目,若不安裝虛擬環(huán)境、都裝在系統(tǒng)里面,每次項(xiàng)目加載都需要加載所有的安裝包,本文就介紹django虛擬環(huán)境的安裝,感興趣的可以了解一下2021-08-08
Django實(shí)現(xiàn)后臺(tái)上傳并顯示圖片功能
這篇文章主要介紹了Django實(shí)現(xiàn)后臺(tái)上傳并顯示圖片功能,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-05-05
Python之標(biāo)點(diǎn)符號(hào)string.punctuation的使用
Python的string模塊提供了一個(gè)方便的屬性string.punctuation,其中包含所有ASCII標(biāo)點(diǎn)符號(hào)字符,這使得在處理和識(shí)別字符串中的標(biāo)點(diǎn)符號(hào)時(shí)非常有用,可以通過(guò)簡(jiǎn)單的in關(guān)鍵字來(lái)檢測(cè)字符是否為標(biāo)點(diǎn)2024-09-09
python+matplotlib繪制餅圖散點(diǎn)圖實(shí)例代碼
這篇文章主要介紹了python+matplotlib繪制餅圖散點(diǎn)圖實(shí)例代碼,本實(shí)例是官網(wǎng)的一個(gè)實(shí)例,不過(guò)也很簡(jiǎn)單,大家可以參考下2018-01-01

