Turtle庫常用函數


導入 turtle 語句 import turtle

設置畫布 turtle.screensize(canvwidth=None,canvheight=None,bg=None)
默認大小為 400 x 300
turtle.screensize()
設置畫布為寬 500,高 300 的 灰色為畫布
turtle.screensize(canvwidth=500,canvheight=300,bg='gray')

turtle.setup(width=0.5,height=0.75,startx=None,starty=None) width 寬 height 高 當width 和 height 是整數時,表示具體的像素 當width 和 height 是小數時,表示占據電腦屏幕的比例 startx 距離屏幕左面邊框的距離 starty 距離屏幕上方邊框的距離 當兩個參數,值均為空 None 時,則窗口位於屏幕中心。
turtle.setup(width=0.5,height=0.75,startx=None,starty=None)

turtle.setup(width=0.5,height=0.75,startx=100,starty=100)

turtle.setup(width=800,height=600,startx=None,starty=None)

turtle 畫筆的基本屬性 設置畫筆的寬度 turtle.pensize( ) 可以傳遞整數參數 turtle.pensize(5)
設置畫筆的顏色 (藍色) turtle.pencolor('blue') 也可以通過RGB三元組進行設置 turtle.pencolor('#f6521f')
設置畫筆的速度 turtle.speed(speed = 0 - 10 之間的整數) turtle.speed(speed = 2)
畫筆運動命令

向當前畫筆方向移動distance像素長度

turtle.forward(distance
= 數字) 數字可以是正數或者是負數,可以是小數類型 turtle.forward(distance = 200)
當前代碼

運行結果

向當前畫筆相反方向移動 distance 像素長度 turtle.backward(distance = 數字) turtle.backward(distance = 300)

順時針轉動 turtle.right(角度) turtle.right(45)
逆時針轉動 turtle.left(角度) turtle.left(90)
落筆

turtle.pendown( )
抬筆,此時不進行繪制

turtle.penup( )
移動到坐標 x , y 的位置 turtle.goto(x,y) turtle.goto(x = 50,y = 80)
畫圓 turtle.circle(半徑) 當半徑為正數時,表示逆時針畫圓圈 turtle.circle(50) 當半徑為負數時,表示順時針畫圓圈 turtle.circle(-50)

import turtle turtle.setup(width=800,height=600,startx=None,starty=None) turtle.pensize(5) turtle.pencolor('blue') # turtle.pencolor('#f6521f')
turtle.speed(speed = 8) turtle.pendown() turtle.forward(distance = 100) turtle.backward(distance = 150) turtle.right(45) turtle.forward(distance = 100) turtle.left(90) turtle.forward(distance = 100) turtle.penup() turtle.goto(x = 50,y = 40) turtle.pendown() turtle.circle(50) turtle.penup() turtle.goto(x = 50,y = -180) turtle.pendown() turtle.circle(50) turtle.mainloop()


移動到對應的 x 軸的位置 turtle.setx(x軸位置) turtle.setx(250)
移動到對應的 y 軸位置 turtle.sety(y軸位置) turtle.sety(250)
設置當前朝向的角度 turtle.setheading(角度) turtle.setheading(45)
設置當前畫筆位置為原點,並將畫筆方向向右。

turtle.home( )
繪制一個指定直徑的圓點 turtle.dot(20)
import turtle turtle.setup(width=800,height=600,startx=None,starty=None) turtle.pensize(5) turtle.pencolor('blue') # turtle.pencolor('#f6521f')
turtle.speed(speed = 8) turtle.pendown() turtle.forward(distance = 50) turtle.setx(100) turtle.sety(150) turtle.setheading(45) # turtle.home()
turtle.dot(20) turtle.forward(distance = 50) turtle.mainloop()

 

 

返回當前是否處於填充狀態

turtle.filling( )
開始填充圖形

turtle.begin_fill( )
圖形的填充顏色 turtle.fillcolor('顏色') turtle.fillcolor('blue')
同時設置 畫筆顏色 與 填充顏色 turtle.color('blue','black')
import turtle turtle.setup(width=800,height=600,startx=None,starty=None) # turtle.color('black','red')
 turtle.begin_fill() # turtle.fillcolor('blue')
turtle.color('blue','black') print(turtle.filling()) turtle.pensize(5) turtle.pencolor('blue') # turtle.pencolor('#f6521f')
turtle.speed(speed = 8) turtle.pendown() turtle.forward(distance = 50) turtle.setx(100) turtle.sety(150) turtle.setheading(240) # turtle.home() # turtle.dot(20)
turtle.forward(distance = 180) # turtle.mainloop()
 turtle.end_fill() turtle.mainloop()

 

 

隱藏畫筆

turtle.hideturtle( )
顯示畫筆

turtle.showturtle( )

全局控制命令

清空 turtle 窗口

turtle.clear( )
清空 turtle 窗口,畫筆回到起始位置

turtle.reset( )
撤銷上一個 turtle 動作

turtle.undo( )
返回當前畫筆是否顯示

turtle.isvisible()
重復執行一次上一個 turtle 操作

turtle.stamp( )
文本字體 turtle.write('文本內容',font = ("宋體",25))

啟動事件循環

turtle.mainloop( )

注:放在最后一句

五角星 代碼
import turtle turtle.pensize(5) turtle.color("black","blue") turtle.begin_fill() for i in range(5): turtle.forward(200) turtle.right(144) turtle.end_fill() turtle.penup() turtle.goto(-180, -150) turtle.color("black") turtle.write("Hany驛站-Turtle五角星", font=('Consolas', 20)) turtle.mainloop()

 

 

 

 

五環 代碼
import turtle def go(x,y): turtle.penup() turtle.goto(x,y) turtle.pendown() def pen(): turtle.screensize(800, 600) turtle.pensize(10) turtle.speed(10) def name(): turtle.penup() turtle.home() turtle.goto(-95,-180) turtle.pendown() turtle.write('Hany驛站-五環',font = ('Consolas',15)) def main(): turtle.setup(width=0.75, height=0.75, startx=None, starty=None) pen() pencolors = ['blue','yellow','black','green','red'] x = -300 y = 0 for i in range(5) : if i == 3 : x = -180 y = -120
        if i < 3 : go(x + i * 250,y) turtle.pencolor(pencolors[i]) turtle.circle(110) else : go(x + ( i - 3 ) * 250, y) turtle.pencolor(pencolors[i]) turtle.circle(110) name() turtle.hideturtle() turtle.mainloop() if __name__ ==  '__main__': main()

 


2021-07-17

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM