Python繪圖之turtle庫的基礎語法使用
前言
Python語言的turtle庫是一個直觀有趣的圖形繪制函數庫,是python語言標準庫之一。
turtle庫也叫海龜庫,是turtle繪圖體系的Python實現。turtle庫是Python語言的標準庫之一,是入門級的圖形繪制函數庫。
turtle繪圖體系:也叫海龜繪圖系統,它是在1969年誕生,主要用於程序設計入門的一種繪圖方式。
Python計算生態 = 標準庫 + 第三方庫
標準庫:隨解釋器直接安裝到操作系統中的功能模塊。
第三方庫:需要經過安裝才能使用的功能模塊。
turtle官方文檔:https://docs.python.org/3/library/turtle.html
turtle庫的繪圖原理是在一個橫軸為x、縱軸為y的坐標平面中,以原點(0,0)位置為開始點,根據一組函數指令的控制來移動,從而在它爬行的路徑上繪制圖形。
一、turtle庫的導入
方法一:import turtle
方法二:import turtle as t
方法三:from turtle import *
二、繪圖命令介紹
1. 畫佈屬性設置
語法 | 含義 |
turtle.screensize(width,height,bg) | 設置畫佈的寬、高、背景顏色 |
turtle.setup(width,height,startx,starty) | 設置畫佈顯示窗口的大小、位置,前兩個參數為窗口大小,後兩個參數為起始點位置 |
2. 畫筆屬性設置
語法 | 含義 |
turtle.pensize(width) | 設置當前畫筆線條的寬度為width像素 |
turtle.colormode(1.0[255]) | 設置畫筆顏色模式 |
turtle.pencolor(colorstring) | 設置畫筆的顏色,參數colorstring可以是”green”、”red”、”blue”、“yellow”等英文字符串 |
turtle.speed(5) | 設置畫筆的移動速度,畫筆繪制的速度范圍在[0,10]整數之間,數字越大,畫筆移動的速度越快。 |
3. 移動畫筆和轉角繪圖
語法 | 含義 |
turtle.penup()/pu()/up() | 提起畫筆,不繪圖 |
turtle.pendown()/pd()/down() | 畫筆移動時繪制圖形 |
turtle.forward(100)/fd(100) | 畫筆向當前方向移動100像素距離 |
turtle.backward(100)/bk(100) | 畫筆向相反方向移動100像素距離 |
turtle.right(45)/rt(45) | 畫筆順時針移動45度 |
turtle.left(45)/lt(45) | 畫筆逆時針移動45度 |
turtle.setheading(45)/seth(45) | 設置當前畫筆朝向為45度 |
turtle.goto(x,y) | 移動畫筆到指定坐標位置 |
turtle.hideturtle() | 隱藏畫筆turtle形狀 |
turtle.showturtle() | 顯示畫筆turtle形狀 |
實例代碼
# coding:utf8 import turtle as t t.setup(500, 500) # 設置畫佈大小 t.reset() # 清空窗口 t.pensize(4) # 設置畫筆大小為4 # 繪制外層正方形 t.penup() # 提起畫筆 t.pencolor("red") # 設置畫筆顏色 t.goto(-200, -200) # 設置外層正方形起點坐標 t.pendown() t.forward(400) # 外層正方形邊長為400像素 t.left(90) t.forward(400) t.left(90) t.forward(400) t.left(90) t.forward(400) # 繪制中間正方形 t.penup() t.pencolor("yellow") t.goto(-150, -150) # 中間正方形起點坐標 t.pendown() t.seth(0) # 重新設定畫筆角度為0° t.forward(300) t.left(90) t.forward(300) t.left(90) t.forward(300) t.left(90) t.forward(300) # 繪制內層中方形 t.penup() t.pencolor("blue") t.goto(-100, -100) # 內層正方形起點坐標 t.pendown() t.seth(0) t.forward(200) t.left(90) t.forward(200) t.left(90) t.forward(200) t.left(90) t.forward(200) t.done()
4. 圖形繪制與圖形填充
語法 | 含義 |
turtle.circle(5,[extent,steps]) | 繪制半徑為5的圓形 |
turtle.color(pencolor,fillcolor) | 同時設置畫筆顏色(邊框顏色)和填充顏色 |
turtle.begin_fill() | 以當前為起點,開始填充顏色 |
turtle.end_fill() | 以當前為終點,結束填充圖形 |
turtle.done() | 繪圖結束後,保留窗口 |
代碼實例
# coding:utf8 import turtle turtle.setup(500, 500) turtle.reset() turtle.pensize(5) turtle.penup() turtle.goto(0, -200) turtle.pendown() # 繪制紅邊框藍填充顏色的大圓 turtle.color("red", "blue") turtle.begin_fill() turtle.circle(200) turtle.end_fill() # 繪制紅邊框綠填充顏色的大圓 turtle.color("red", "green") turtle.begin_fill() turtle.circle(150) turtle.end_fill() # 繪制紅邊框黃填充顏色的大圓 turtle.color("red", "yellow") turtle.begin_fill() turtle.circle(100) turtle.end_fill() turtle.done()
三、turtle繪圖實例:繪制太陽花
import turtle as t # 導入Turtle庫,並指定導入庫的別名為t t.color("red", "yellow") # 同時設置pencolor=red, fillcolor=yellow t.speed(10) # 設置畫筆繪制的速度為10 t.begin_fill() # 準備開始填充圖形 for x in range(50): # 利用for循環繪制太陽花 t.forward(200) # 向當前畫筆方向移動200像素 t.left(170) # 逆時針旋轉170度 t.end_fill() # 填充完成 t.done() # 繪制完成後窗口不退出
總結
到此這篇關於Python繪圖之turtle庫基礎語法使用的文章就介紹到這瞭,更多相關Python繪圖turtle庫內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- 用Python畫聖誕樹代碼示例
- 基於Python-turtle庫繪制路飛的草帽骷髏旗、美國隊長的盾牌、高達的源碼
- 詳解Python如何利用turtle繪制中國結
- python繪制神器五角星+小黃人+櫻花
- python turtle庫畫聖誕樹詳細代碼教程