turtle库概述
- turtle(海龟)库是turtle绘图体系的Python实现;
- 属于入门级的图形绘制函数库;
- Python语言的标准库之一。
-
引入问题1:什么是标准库?
-
问题答复:Python计算生态 = 标准库 + 第三方库,标准库是随解释器直接安装到操作系统中的功能模块,第三方库是需要经过安装才能使用的功能模块。
-
引入问题2:什么是功能模块?
-
问题答复:库Library、包Package、模块Module,统称模块。
-
引入问题3:turtle库绘图原理?
-
问题答复:turtle(海龟)可以在画布上自由游走,走过的轨迹形成了绘制的图形,turtle(海龟)由开发者程序控制,可以控制其颜色、宽度、方向等。
turtle库语法
窗体
- 窗体概念:turtle的一个画布空间,最小单位是像素。
- API接口:turtle.setup(width, height, startx, starty):
- 用于设置窗体大小(width、height)及位置(startx、starty,以电脑屏幕左顶角为坐标系原点);
- 参数startx, starty属于可选参数;
- 绘图时setup()不是必备函数。
#PythonDrawTest.py
#引入turtle/海龟库(支持画图功能)
import turtle as t
''' 设置窗体大小 '''
t.setup(1000, 800, 200, 200)
#保持程序继续运行,不关闭
t.done()
坐标体系
空间坐标系

- 绝对坐标系:以窗体画布中心点做为原点。
- API函数接口:
- turtle.goto(x, y),(x, y)表示坐标系的坐标点,画笔(海龟)从当前位置沿直线前往(x, y);
#PythonDrawTest.py
#引入turtle/海龟库(支持画图功能)
import turtle as t
''' 绘制一个正方形 '''
t.goto(100, 0)
t.goto(100, -100)
t.goto(0, -100)
t.goto(0, 0)
#保持程序继续运行,不关闭
t.done()

- 海龟坐标:以海龟做为参考物,前进方向为坐标方向,向左、向右、向前、向后转向指定度数。
- API函数接口:
- turtle.bk(d)、turtle.fd(d),画笔(海龟)从当前位置沿直线后退或者前进(d)像素;
- turtle.circle(r, angle):以画笔(海龟)左上角半径(r)像素画圆,画笔(海龟)行进(angle)度;
#PythonDrawTest.py
#引入turtle/海龟库(支持画图功能)
import turtle as t
''' 绘制一个正方形 '''
t.fd(100)
t.circle(0, 90)
t.fd(200)
t.circle(0, 90)
t.fd(200)
t.circle(0, 90)
t.fd(200)
t.circle(0, 90)
t.fd(100)
''' 正方形内绘制一个圆 '''
t.circle(100, 360)
#保持程序继续运行,不关闭
t.done()
角度坐标体系

- 绝对角度:以窗体画布中心点做为原点。
- API接口函数:turtle.seth(angle):改变画笔(海龟)行进方向,(angle)为绝对度数,只改变方向但不行进;
#PythonDrawTest.py
#引入turtle/海龟库(支持画图功能)
import turtle as t
''' 绘制一个W '''
t.seth(-45)
t.fd(80)
t.seth(45)
t.fd(60)
t.seth(-45)
t.fd(60)
t.seth(45)
t.fd(80)
#保持程序继续运行,不关闭
t.done()

- 海龟角度:以海龟做为参考物,前进方向为坐标方向,向左或者向右转向指定度数。
- API接口函数:turtle.left(angle)、turtle.right(angle):改变画笔(海龟)行进方向,左转或者右转(angle)度;
#PythonDrawTest.py
#引入turtle/海龟库(支持画图功能)
import turtle as t
''' 绘制一个W '''
t.right(45)
t.fd(80)
t.left(90)
t.fd(60)
t.right(90)
t.fd(60)
t.left(90)
t.fd(80)
#保持程序继续运行,不关闭
t.done()
RGB色彩体系
- RGB指红蓝绿三个通道的颜色组合, 能够覆盖视力所能感知的所有颜色;
- RGB每色取值范围0-255整数或0-1小数。
- 常用颜色RGB数值如下:

- API函数接口:
- turtle.colormode(mode):mode值为1.0表示RGB小数值模式(默认),mode值为255表示RGB整数值模式。
- turtle.penup():画笔抬起或者海龟起飞,此时不在窗体(画布)上绘制。
- turtle.pendown():画笔落下或者海龟降落,开始在窗体(画布)上绘制。
- turtle.pensize(width=None):设置画笔(海龟)宽度,参数大小是像素。
- turtle.pencolor(*args):设置画笔(海龟)颜色,参数可以是颜色英文名称,也可以是RGB小数值或者整数值。
#PythonDrawTest.py
#引入turtle/海龟库(支持画图功能)
import turtle as t
''' 绘制五环 '''
t.setup(800, 600, 100, 50)
t.pensize(8)
t.penup()
t.bk(200)
t.pendown()
t.pencolor("blue")
t.circle(100, 360)
t.penup()
t.fd(220)
t.pendown()
t.pencolor("black")
t.circle(100, 360)
t.penup()
t.fd(220)
t.pendown()
t.colormode(255)
t.pencolor(255, 192, 203)
t.circle(100, 360)
t.penup()
t.bk(200 + 20 + 100)
t.circle(0, -90)
t.fd(100)
t.circle(0, 90)
t.pendown()
t.colormode(1)
t.pencolor(1, 1, 0)
t.circle(100, 360)
t.penup()
t.fd(220)
t.pendown()
t.pencolor("cyan")
t.circle(100, 360)
#保持程序继续运行,不关闭
t.done()
本文详细介绍了Python的turtle库,包括它作为标准库的角色、基本的绘图原理以及如何通过API进行图形绘制。内容涵盖窗体设置、坐标体系、RGB色彩系统以及如何控制海龟的方向和颜色。示例代码展示了正方形、圆形、字母W的绘制,以及五环标志的色彩应用,是Python初学者掌握图形编程的良好起点。
1269

被折叠的 条评论
为什么被折叠?



