最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python繪圖操作之turtle庫(kù)烏龜繪圖全面整理

 更新時(shí)間:2021年10月12日 09:39:09   作者:Bitdancing  
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),從而在它爬行的路徑上繪制了圖形

【函數(shù)表格整理在最下方】

官方文檔網(wǎng)址

turtle

繪圖窗口

\g)]

turtle.setup(width, height, startx, starty)

參數(shù):width, height: 輸入寬和高為整數(shù)時(shí), 表示像素; 為小數(shù)時(shí), 表示占據(jù)電腦屏幕的比例,(startx, starty): 這一坐標(biāo)表示矩形窗口左上角頂點(diǎn)的位置, 如果為空,則窗口位于屏幕中心。

  • setup設(shè)置窗體大小和位置
  • 4個(gè)參數(shù)中后兩個(gè)可選(默認(rèn)居中)
  • setup()不是必須的

turtle.screensize(canvwidth=None, canvheight=None, bg=None)

參數(shù)分別為畫(huà)布的寬(單位像素), 高, 背景顏色。

如:turtle.screensize(800,600, “green”)

​ turtle.screensize() #返回默認(rèn)大小(400, 300)

空間坐標(biāo)體系

絕對(duì)坐標(biāo)

[)]

【demo】

import turtle
turtle.goto(100, 100)
turtle.goto(100, -100)
turtle.goto(-100, -100)
turtle.goto(-100, 100)
turtle.goto(0, 0)

[]

海龜坐標(biāo)

[)]

[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來(lái)直接上傳(img-HIs9TdaP-1633154999063)(C:\Users\Joy Zhang\AppData\Roaming\Typora\typora-user-images\image-20211002134938669.jpg)]

turtle.fd(d)

turtle.bk(d)

turtle.circle(r, angle)(以海龜為中心,向左轉(zhuǎn))

角度坐標(biāo)體系

絕對(duì)角度

]

turtle.seth(angle)

  • seth()改變海龜行進(jìn)方向
  • seth()只改變方向不行進(jìn)
  • angle 絕對(duì)度數(shù)

在這樣基礎(chǔ)上,繼續(xù)turtle.fd(d)

海龜角度

[)]

turtle.left(angle)

turtle.right(angle)

【demo】

import turtle
turtle.left(45)
turtle.fd(150)
turtle.right(135)
turtle.fd(300)
turtle.left(135)
turtle.fd(150)
turtle.done()

[)]

RGB色彩體系

每色取值范圍0-255整數(shù)或者0-1小數(shù)。

[]

[]

turtle庫(kù)默認(rèn)采用RGB小數(shù)值,可以使用turtle.colormode(mode)可切換。

  • 1.0: RGB小數(shù)值
  • 255:RGB整數(shù)值

color參數(shù)的三種形式

  • 顏色字符串 turtle.pencolor("purple")
  • RGB的小數(shù)值:turtle.pencolor(0.63, 0.13, 0.94)
  • RGB的元組值:turtle.pencolor((0.63, 0.13, 0.94))

畫(huà)筆控制函數(shù)

把海龜想象成畫(huà)筆,畫(huà)筆操作后一直有效,一般成對(duì)出現(xiàn)。

  • turtle.penup() 別名:turtle.pu()

將畫(huà)筆抬起,海龜在飛行。

  • turtle.pendown() 別名:turtle.pd()

落下畫(huà)筆,海龜落下。

  • turtle.pensize(width) 別名:turtle.width(width)

畫(huà)筆寬度,海龜?shù)难鼑?/p>

  • turtle.pencolor(color) color為顏色字符串 或 r,g,b值

畫(huà)筆顏色,海龜在涂裝

  • turtle.speed(speed),設(shè)置畫(huà)筆移動(dòng)速度,畫(huà)筆繪制的速度范圍[0,10]整數(shù),數(shù)字越大越快。
  • turtle.fillcolor(colorstring)繪制圖形的填充顏色
  • turtle.hideturtle() 隱藏畫(huà)筆的turtle形狀
  • turtle.showturtle() 顯示畫(huà)筆的turtle形狀

運(yùn)動(dòng)控制函數(shù)

  • 走直線:turtle.forward(d) 別名 turtle.fd(d)

d的單位是像素,向前行進(jìn),海龜走直線。

d是行進(jìn)距離,可以是負(fù)數(shù)。

  • turtle.backward(distance)向當(dāng)前畫(huà)筆相反方向移動(dòng)distance像素長(zhǎng)度
  • 走曲線:turtle.circle(r, extent = None)

根據(jù)半徑r繪制extent角度(默認(rèn)360)的弧形

圓心默認(rèn)在海龜左手側(cè),如果r是負(fù)的,圓心在海龜右側(cè)。

  • dot(r) 繪制一個(gè)指定直徑和顏色的圓點(diǎn)

[]

方向控制函數(shù)

只改變行進(jìn)方向,不會(huì)改變路線。

分為絕對(duì)角度和海龜角度。

  • turtle.setheading(angle) 別名 turtle.seth(angle)

改變行進(jìn)方向,海龜走角度(改變絕對(duì)角度)

)]

  • turtle.left(angle) 海龜向左轉(zhuǎn)
  • turtle.right(angle)海龜向右轉(zhuǎn)

全局控制命令

  • 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是否可見(jiàn)
  • turtle.write(s [,font=("font-name",font_size,"font_type")])寫(xiě)文本,s為文本內(nèi)容,font是字體的參數(shù),分別為字體名稱,大小和類型;font為可選項(xiàng),font參數(shù)也是可選項(xiàng)

示例

蟒蛇繪制

【demo】

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()

]

七段數(shù)碼管日期顯示

import turtle
import time
def drawGap(): # 繪制數(shù)碼管間隔
    turtle.penup()
    turtle.fd(5)
def drawLine(draw):  # 繪制單線
    drawGap()
    turtle.pendown() if draw else turtle.penup()
    turtle.fd(40)
    drawGap()
    turtle.right(90)
def drawDigit(digit): # 繪制單個(gè)數(shù)字
    drawLine(True) if digit in [2,3,4,5,6,8,9] else drawLine(False)
    drawLine(True) if digit in [0,1,3,4,5,6,7,8,9] else drawLine(False)
    drawLine(True) if digit in [0,2,3,5,6,8,9] else drawLine(False)
    drawLine(True) if digit in [0,2,6,8] else drawLine(False)
    turtle.left(90)
    drawLine(True) if digit in [0,4,5,6,8,9] else drawLine(False)
    drawLine(True) if digit in [0,2,3,5,6,7,8,9] else drawLine(False)
    drawLine(True) if digit in [0,1,2,3,4,7,8,9] else drawLine(False)
    turtle.left(180)
    turtle.penup()
    turtle.fd(20)
def drawData(date):
    turtle.pencolor("red")
    for i in date:
        if i == '-':
            turtle.write("年", font=("Arial", 18, "normal"))
            turtle.pencolor("green")
            turtle.fd(40)
        elif i == '=':
            turtle.write("月", font=("Arial", 18, "normal"))
            turtle.fd(40)
        elif i == '+':
            turtle.write("日", font=("Arial", 18, "normal"))
        else:
            drawDigit(eval(i))
def main():
    turtle.setup(800,350,200,200)
    turtle.penup()
    turtle.fd(-300)
    turtle.pensize(5)
    turtle.color("purple")
    drawData(time.strftime("%Y-%m=%d+", time.gmtime()))
    turtle.hideturtle()
    turtle.done()
main()

[

太陽(yáng)花

import turtle
import time
 
# 同時(shí)設(shè)置pencolor=color1, fillcolor=color2
turtle.color("red", "yellow")
 
turtle.begin_fill()
for _ in range(50):
turtle.forward(200)
turtle.left(170)
turtle.end_fill()

turtle.mainloop()

img

庫(kù)函數(shù)表格整理

畫(huà)筆運(yùn)動(dòng)命令

turtle.forward(distance)

向當(dāng)前畫(huà)筆方向移動(dòng)distance像素長(zhǎng)度

turtle.backward(distance)

向當(dāng)前畫(huà)筆相反方向移動(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)

將畫(huà)筆移動(dòng)到坐標(biāo)為x,y的位置

turtle.penup()

提起筆移動(dòng),不繪制圖形,用于另起一個(gè)地方繪制

turtle.circle()

畫(huà)圓,半徑為正(負(fù)),表示圓心在畫(huà)筆的左邊(右邊)畫(huà)圓

setx( )

將當(dāng)前x軸移動(dòng)到指定位置

sety( )

將當(dāng)前y軸移動(dòng)到指定位置

setheading(angle)

設(shè)置當(dāng)前朝向?yàn)閍ngle角度

home()

設(shè)置當(dāng)前畫(huà)筆位置為原點(diǎn),朝向東。

dot®

繪制一個(gè)指定直徑和顏色的圓點(diǎn)

畫(huà)筆控制命令

turtle.fillcolor(colorstring)

繪制圖形的填充顏色

turtle.color(color1, color2)

同時(shí)設(shè)置pencolor=color1, fillcolor=color2

turtle.filling()

返回當(dāng)前是否在填充狀態(tài)

turtle.begin_fill()

準(zhǔn)備開(kāi)始填充圖形

turtle.end_fill()

填充完成

turtle.hideturtle()

隱藏畫(huà)筆的turtle形狀

turtle.showturtle()

顯示畫(huà)筆的turtle形狀

全局控制命令

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是否可見(jiàn)

stamp()

復(fù)制當(dāng)前圖形

turtle.write(s [,font=(“font-name”,font_size,“font_type”)])

寫(xiě)文本,s為文本內(nèi)容,font是字體的參數(shù),分別為字體名稱,大小和類型;font為可選項(xiàng),font參數(shù)也是可選項(xiàng)

其他命令

turtle.mainloop()或turtle.done()

啟動(dòng)事件循環(huán) -調(diào)用Tkinter的mainloop函數(shù)。

必須是烏龜圖形程序中的最后一個(gè)語(yǔ)句。

turtle.delay(delay=None)

設(shè)置或返回以毫秒為單位的繪圖延遲。

turtle.begin_poly()

開(kāi)始記錄多邊形的頂點(diǎn)。當(dāng)前的烏龜位置是多邊形的第一個(gè)頂點(diǎn)。

turtle.end_poly()

停止記錄多邊形的頂點(diǎn)。當(dāng)前的烏龜位置是多邊形的最后一個(gè)頂點(diǎn)。將與第一個(gè)頂點(diǎn)相連。

turtle.get_poly()

返回最后記錄的多邊形。

到此這篇關(guān)于Python繪圖操作之turtle庫(kù)烏龜繪圖全面整理的文章就介紹到這了,更多相關(guān)Python turtle庫(kù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python利用matplotlib繪制約數(shù)個(gè)數(shù)統(tǒng)計(jì)圖示例

    Python利用matplotlib繪制約數(shù)個(gè)數(shù)統(tǒng)計(jì)圖示例

    這篇文章主要介紹了Python利用matplotlib繪制約數(shù)個(gè)數(shù)統(tǒng)計(jì)圖,結(jié)合實(shí)例形式詳細(xì)分析了Python使用matplotlib進(jìn)行統(tǒng)計(jì)圖繪制的相關(guān)操作技巧,需要的朋友可以參考下
    2019-11-11
  • 關(guān)于SSD目標(biāo)檢測(cè)模型的人臉口罩識(shí)別

    關(guān)于SSD目標(biāo)檢測(cè)模型的人臉口罩識(shí)別

    這篇文章主要介紹了關(guān)于SSD目標(biāo)檢測(cè)模型的人臉口罩識(shí)別問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • python3將變量輸入的簡(jiǎn)單實(shí)例

    python3將變量輸入的簡(jiǎn)單實(shí)例

    在本篇文章里小編給大家整理的是一篇關(guān)于python3將變量輸入的簡(jiǎn)單實(shí)例內(nèi)容,有需要的朋友們可以參考下。
    2020-08-08
  • python使用pandas從minio讀取excel文件方式

    python使用pandas從minio讀取excel文件方式

    從MinIO讀取Excel文件并使用Pandas處理的步驟:首先使用MinIOPythonSDK下載文件,然后使用Pandas讀取,總結(jié):安裝依賴需使用Pandas和MinIOPythonSDK
    2024-11-11
  • Linux安裝Python3如何和系統(tǒng)自帶的Python2并存

    Linux安裝Python3如何和系統(tǒng)自帶的Python2并存

    這篇文章主要介紹了Linux安裝Python3如何和系統(tǒng)自帶的Python2并存,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-07-07
  • PyCharm刷新項(xiàng)目(文件)目錄的實(shí)現(xiàn)

    PyCharm刷新項(xiàng)目(文件)目錄的實(shí)現(xiàn)

    今天小編就為大家分享一篇PyCharm刷新項(xiàng)目(文件)目錄的實(shí)現(xiàn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-02-02
  • python中的&&及||的實(shí)現(xiàn)示例

    python中的&&及||的實(shí)現(xiàn)示例

    這篇文章主要介紹了python中的&&及||的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • Python運(yùn)算符重載用法實(shí)例分析

    Python運(yùn)算符重載用法實(shí)例分析

    這篇文章主要介紹了Python運(yùn)算符重載用法,實(shí)例分析了幾種常見(jiàn)的Python運(yùn)算符重載的使用技巧,需要的朋友可以參考下
    2015-06-06
  • Python異常處理之避免try-except濫用的3個(gè)核心原則

    Python異常處理之避免try-except濫用的3個(gè)核心原則

    在Python開(kāi)發(fā)中,異常處理是保證程序健壯性的關(guān)鍵機(jī)制,本文結(jié)合真實(shí)案例與Python核心機(jī)制,提煉出避免異常濫用的三大原則,有需要的小伙伴可以了解下
    2025-09-09
  • pytyon 帶有重復(fù)的全排列

    pytyon 帶有重復(fù)的全排列

    輸入開(kāi)始排列數(shù)字和結(jié)束排列數(shù)字, 就會(huì)一個(gè)字典序輸出所以的排列情況
    2013-08-08

最新評(píng)論

太谷县| 德化县| 天柱县| 泗阳县| 五华县| 丹寨县| 犍为县| 枣强县| 普兰县| 航空| 柯坪县| 巧家县| 台中市| 乌鲁木齐县| 延长县| 肇东市| 平果县| 康马县| 泰兴市| 阿坝县| 成安县| 昌江| 徐闻县| 互助| 邯郸市| 离岛区| 玉溪市| 曲阳县| 台东市| 长子县| 永嘉县| 汝州市| 重庆市| 桃江县| 杨浦区| 桃园县| 镇平县| 泾阳县| 郧西县| 黎城县| 中牟县|