Python如何使用turtle庫繪制圖形
1. 前奏:
在用turtle繪制圖形時(shí),需要安裝對(duì)應(yīng)python的解釋器以及IDE,我安裝的是pycharm,在安裝完pycharm后,在pycharm安裝相應(yīng)庫的模塊,繪圖可以引入turtle模塊,想要進(jìn)行運(yùn)算可以引入numpy模塊。
需要注意: 在pycharm 中 turtle 是不支持提示的,可能是動(dòng)態(tài)語言的一種毛病吧
turtle繪圖常用的函數(shù)有:

操縱海龜繪圖有著許多的命令,這些命令可以劃分為兩種:一種為運(yùn)動(dòng)命令,一種為畫筆控制命令
(1)畫筆運(yùn)動(dòng)命令:
命令 說明
- turtle.forward(distance) 向當(dāng)前畫筆方向移動(dòng)distance像素長(zhǎng)
- turtle.backward(distance) 向當(dāng)前畫筆相反方向移動(dòng)distance像素長(zhǎng)度
- turtle.right(degree) 順時(shí)針移動(dòng)degree°
- turtle.left(degree) 逆時(shí)針移動(dòng)degree°
- turtle.pendown() 移動(dòng)時(shí)繪制圖形,缺省時(shí)也為繪制
- turtle.goto(x,y) 將畫筆移動(dòng)到坐標(biāo)為x,y的位置
- turtle.penup() 移動(dòng)時(shí)不繪制圖形,提起筆,用于另起一個(gè)地方繪制時(shí)用
- turtle.speed(speed) 畫筆繪制的速度范圍[0,10]整數(shù)
- turtle.circle() 畫圓,半徑為正(負(fù)),表示圓心在畫筆的左邊(右邊)畫圓
(2)畫筆控制命令:
命令 說明
- turtle.pensize(width) 繪制圖形時(shí)的寬度
- turtle.pencolor() 畫筆顏色
- turtle.fillcolor(colorstring) 繪制圖形的填充顏色
- turtle.color(color1, color2) 同時(shí)設(shè)置pencolor=color1, fillcolor=color2
- turtle.filling() 返回當(dāng)前是否在填充狀態(tài)
- turtle.begin_fill() 準(zhǔn)備開始填充圖形
- turtle.end_fill() 填充完成;
- turtle.hideturtle() 隱藏箭頭顯示;
- turtle.showturtle() 與hideturtle()函數(shù)對(duì)應(yīng)
(3) 全局控制命令
命令 說明
- turtle.clear() 清空turtle窗口,但是turtle的位置和狀態(tài)不會(huì)改變
- turtle.reset() 清空窗口,重置turtle狀態(tài)為起始狀態(tài)
- turtle.undo() 撤銷上一個(gè)turtle動(dòng)作
- turtle.isvisible() 返回當(dāng)前turtle是否可見
- stamp() 復(fù)制當(dāng)前圖形
- turtle.write(s[,font=("font-name",font_size,"font_type")]) 寫文本,s為文本內(nèi)容,font是字體的參數(shù),里面分別為字體名稱,大小和類型;font為可選項(xiàng), font的參數(shù)也是可選項(xiàng)
2. 需要說明的
(1): 在畫布上,默認(rèn)有一個(gè)坐標(biāo)原點(diǎn)為畫布中心的坐標(biāo)軸, 坐標(biāo)原點(diǎn)上有一只面朝x軸正方向小烏龜. 這里我們描述小烏龜時(shí)使用了兩個(gè)詞語:坐標(biāo)原點(diǎn)(位置),面朝x軸正方向(方向), turtle繪圖中, 就是使用位置方向描述小烏龜(畫筆)的狀態(tài) 這個(gè)命令就是goto();
(2): turtle.circle(radius, extent=None, steps=None)描述: 以給定半徑畫圓
參數(shù):
- radius(半徑); 半徑為正(負(fù)),表示圓心在畫筆的左邊(右邊)畫圓
- extent(弧度) (optional);
- steps (optional) (做半徑為radius的圓的內(nèi)切正多邊形,多邊形邊數(shù)為steps)
舉例:
- circle(50) # 整圓;
- circle(50,steps=3) # 三角形;
- circle(120, 180) # 半圓
(3) 填充 start_fill() end_fill()
參數(shù)為空 表示在一個(gè)畫筆運(yùn)動(dòng)狀態(tài)結(jié)束的時(shí)候,填充的內(nèi)容顏色
3.具體例子:
繪制一個(gè)正方形


4.繪制 五角星

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
python使用IP歸屬地查詢API追蹤網(wǎng)絡(luò)活動(dòng)
這篇文章主要為大家介紹了python使用IP歸屬地查詢API追蹤網(wǎng)絡(luò)活動(dòng)實(shí)現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-09-09
Python使用pymongo庫操作MongoDB數(shù)據(jù)庫的方法實(shí)例
今天小編就為大家分享一篇關(guān)于Python使用pymongo庫操作MongoDB數(shù)據(jù)庫的方法實(shí)例,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-02-02
pytest多線程與多設(shè)備并發(fā)appium
這篇文章介紹了pytest多線程與多設(shè)備并發(fā)appium,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-06-06
Python根據(jù)歐拉角求旋轉(zhuǎn)矩陣的實(shí)例
今天小編就為大家分享一篇Python根據(jù)歐拉角求旋轉(zhuǎn)矩陣的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-01-01
Python繪制指數(shù)分布的概率密度函數(shù)圖
在數(shù)據(jù)科學(xué)和統(tǒng)計(jì)學(xué)中,指數(shù)分布是一種應(yīng)用廣泛的連續(xù)概率分布,通常用于建模獨(dú)立隨機(jī)事件發(fā)生的時(shí)間間隔,本文將展示如何在Python中繪制指數(shù)分布的概率密度函數(shù)圖,需要的可以了解下2024-12-12
Django Auth應(yīng)用實(shí)現(xiàn)用戶身份認(rèn)證
Django Auth 應(yīng)用一般用在用戶的登錄注冊(cè)上,用于判斷當(dāng)前的用戶是否合法。本文將介紹Auth的另一個(gè)功能,即認(rèn)證用戶身份,感興趣的同學(xué)可以關(guān)注一下2021-12-12

