turtle庫是python的基礎繪圖庫,這個庫被介紹為一個最常用的用來介紹編程知識的方法庫,其主要是用於程序設計入門,是標准庫之一,利用turtle可以制作很多復雜的繪圖。
turtle名稱含義為“海龜”,我們想象一只海龜,位於顯示器上窗體的正中心,在畫布上游走,它游走的軌跡就形成了繪制的圖形。
海龜的運動是由程序控制的,它可以變換顏色,改變大小(寬度)等。
- 繪圖坐標體系
turtle.setup(width,height,startx,starty)
使用turtle的setup函數,可以在屏幕中生成一個窗口(窗體),設置窗體的大小和位置,這個窗口就是畫布的范圍。
- 畫筆控制函數
penup()
:抬起畫筆;pendown()
:落下畫筆;pensize(width)
:畫筆寬度;pencolor(color)
:畫筆顏色;
- 運動控制函數
1.直線
turtle.forward(d) # turtle.fd(d) d為參數行進距離 控制畫筆向前走d長度的直線 d可以為負數,表示向后運動。
2.
曲線
turtle.circle(r,extent=None) # 根據半徑r繪制extent角度的弧形 r 默認圓心在畫筆左端點距離r長度的地方
extent是繪制的角度,默認繪制完整的圓形
turtle.circle(100) # 在畫筆的左側(也就是上方)100距離的位置上然后以弧形來運動,沒有設置extent參數,因此會繪制整個圓形
turtle.circle(-100,90) #圓心在畫筆的右側100距離(也就是下方)上,然后extent為90,因此繪制一個90度的弧形。
- 方向控制函數
絕對角度轉向函數
turtle.setheading(angle) # turtle.seth(angle) 改變畫筆的面向的角度( 初始方向是畫布的正右方) 參數angle是絕對坐標系的角度 畫筆角度轉向函數
turtle.left(angle) # 向左轉angle度 turtle.right(angle) # 向右轉angle度
實例
代碼:
#coding=utf-8
#繪制蟒蛇
import turtle
turtle.penup()
turtle.pencolor("blue")
turtle.forward(-250)
turtle.pendown()
turtle.pensize(10)
turtle.right(45)
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()
運行結果: