
基礎總結
turtle庫是python标準庫之一,入門級繪圖庫。import turtle之後即可使用。
turtle繪圖原理:有一隻海龜,其實在窗體正中心,在畫布上遊, 走過的軌迹形成了繪制的圖形,海龜由程式控制,可以變換 顔色、改變寬度等。
1、繪圖視窗設定指令
turtle.setup(400,300,200,100):參數以此(寬,高,距離螢幕左邊距離,距離螢幕上方距離),螢幕左上角原點,機關像素。
2、運動指令
turtle.goto(x,y):直接跳轉到(x,y)點,以繪圖視窗中心為原點,向右為x軸,向上為y軸。
turtle.fd(d)、turtle.forward(d):以目前方向,往前行進d像素。
turtle.bk(d)、turtle.backword(d):保持目前方向不變,往後退行d像素。
turtle.circle(r,angle):從目前位置以r為半徑圓的angle角度旋轉。
3、方向設定指令
turtle.seth(angle):以x軸方向為起點将方向偏轉為angle度,逆時針為正。隻改變行進方向但不行進。
turtle.left(angle):在目前行進方向的基礎上,向左旋轉angle度。
turtle.right(angle):在目前行進方向的基礎上,向右旋轉angle度。
4、畫筆控制指令
turtle.penup():台筆
turtle.pendown():落筆
turtle.pensize(width):畫筆粗細
turtle.pencolor(顔色名red/RGB三元組/顔色編碼):畫筆顔色
turtle.fillcolor(colorstring):繪制圖形的填充顔色
turtle.begin_fill():開始填充
turtle.end_fill():結束填充
turtle.filling():傳回目前是否在填充狀态
示例
1、使用 turtle 庫的 turtle.fd() 函數和 turtle.seth() 函數繪制一個等邊三角形,邊長為 200 像素,效果如下圖所示。
import turtle as t for i in range(3): t.seth(i*120) t.fd(200)
2、使用 turtle 庫的 turtle.fd() 函數和 turtle.seth() 函數繪制一個邊長為 200 的正方形,效果如下圖所示。
import turtled = 0for i in range(4): turtle.fd(200) d=d+90 turtle.seth(d)
3、使用 turtle 庫的 turtle.right() 函數和 turtle.fd() 函數繪制一個菱形四邊形,邊長為 200 像素,效果如下圖所示。
import turtle as tt.right(-30)for i in range(2): t.fd(200) t.right(60*(i+1))for i in range(2): t.fd(200) t.right(60*(i+1))
4、用 turtle 庫的 turtle.fd() 函數和 turtle.left() 函數繪制一個六邊形,邊長為 200 像素,效果如下圖所示。
import turtle as tfor i in range(6): t.fd(200) t.left(60)
5、用 turtle 庫的 turtle.fd() 函數和 turtle.seth() 函數繪制一個五邊形,邊長為 200 像素,效果如下圖所示。
import turtled = 0for i in range(5): turtle.fd(200) d += 72 turtle.seth(d)
6、使用 turtle 庫的 turtle.circle() 函數、turtle.seth() 函數和 turtle.left() 函數繪制一個四瓣花圖形,從左上角花瓣開始,逆時針作畫,效果如下圖所示。
import turtle as tfor i in range(4): t.seth(90 * (i + 1)) #90,180,270,360 t.circle(200,90) #-90,0,90,180 t.seth(-90 + i * 90) t.circle(200,90)
7、使用 turtle 庫的 turtle.right() 函數和 turtle.circle() 函數繪制一個四葉草,效果如下圖所示。
import turtlefor i in range(4): turtle.right(90) turtle.circle(50,180)
8、使用 turtle 庫的 turtle.right() 函數和 turtle.circle() 函數繪制一個星星圖形(半徑為90),如下圖所示。
import turtlefor i in range(4): turtle.circle(-90,90) turtle.right(180)
9、使用 turtle 庫的 turtle.circle() 函數和 turtle.seth() 函數繪制套圈,最小的圓圈半徑為 10 像素,不同圓圈之間的半徑差是 40 像素。效果如下圖所示。
import turtler =10head = 90for i in range (4): turtle.seth(head) turtle.circle (r) r = r + 40turtle.done()
10、使用 turtle 庫的 turtle.circle() 函數和 turtle.seth() 函數繪制同心圓套圈,最小的圓圈半徑為 10 像素,不同圓圈之間的半徑差是 40 像素,效果如下圖所示。
import turtler = 10dr = 40head = 90for i in range (4): turtle.pendown() turtle.circle(r) r += dr turtle.penup() turtle.seth(-head) turtle.fd(dr) turtle.seth(0)turtle.done()
是不是感覺很簡單?那就對了,Python本身就是一門易懂的語言程式,經過咱們一段時間的基礎教程,相信大家會很容易接受turtle庫的處理。
- END -
文源網絡,僅供學習之用。 如有侵權,聯系删除。往期精彩
◆ 50款開源工具你都用過嗎?
◆ python+C、C++混合程式設計的應用
◆ python網絡爬蟲的基本原理詳解
◆ Python自動操控excel,一小時解決你一天的工作
◆ 如何用Python增強Excel,減少處理複雜資料的痛苦?