109. Python的turtle库简介
【目录】
文章目录
- 109. Python的turtle库简介
- 1. 什么是turtle库?
- 2. 用turtle库绘制一个爱心图案
- 3. 库的导入方法
- 3.1 直接导入整个库
- 3.2 从库中导入特定的函数或类
- 3.3 导入库中的所有内容
- 3.4 为导入的库设置别名
- 3.5 为导入的函数或变量设置别名
- 4. turtle库常用的绘图命令
【正文】
1. 什么是turtle库?
turtle[ˈtɜːtl]:海龟。
【功能】
编写指令来控制一个虚拟的小海龟(turtle即箭头)在屏幕上移动,从而绘制出各种图形。
这个虚拟海龟可以看作是一个画笔,它能够在画布上移动,画出用户想要的图案。
turtle库提供了一系列的函数和方法来控制这个虚拟海龟的行为,包括前进、后退、转向等动作。
用户可以绘制出直线、圆形、多边形等基本图形,甚至可以创建更复杂的图案和设计。
turtle库允许设置画笔的颜色、粗细以及画布的大小和背景颜色等属性,使得绘制出的图形更加丰富和个性化。
2. 用turtle库绘制一个爱心图案
【效果展示】
【代码展示】
# 绘制爱心图案import turtle# 创建画布和海龟对象
canvas = turtle.Screen()
canvas.bgcolor("white")
pen = turtle.Turtle()
# 设置画笔颜色和填充颜色
pen.color("red", "pink")
pen.pensize(3)
pen.speed(2)# 绘制爱心形状
pen.up( )
pen.goto(0,-100)
pen.down()
pen.begin_fill()
pen.left(45)
pen.forward(150)
pen.circle(75, 180)
pen.right(90)
pen.circle(75, 180)
pen.forward(150)
pen.end_fill()# 隐藏画笔
pen.hideturtle()# 保持窗口打开,直到用户关闭它
turtle.done( )
【温馨提示】
后面的文章会对上述的代码进行逐行解析。
【源码文件】
109-绘制爱心图案.py
私信作者领取。
3. 库的导入方法
turtle库是Python标准库
。
使用前无需安装,导入即可调用。
导入库通常有以下几种方法。
3.1 直接导入整个库
【语法】
import turtle
使用import关键字导入整个库。
通过库名turtle作为前缀来访问turtle库中的所有函数和类。
即:每次调用库的类、方法等前面都要将turtle库名作为前缀。
【代码示例】
import turtle# 实例化类创建画笔对象
# 变量=库名.类名( )
# 导入的是库名,调用时库名turtle作为前缀
# 调用turtle库的Turtle类
pen = turtle.Turtle( )
3.2 从库中导入特定的函数或类
【语法】
from turtle import function_name, class_name
从库中导入特定的函数或类,导入之后可以直接使用这些函数或类,无需加前缀。
【代码示例】
from turtle import Turtle# 实例化类创建对象
# 前缀turtle库名不需要
# Turtle是类名,类名首字母大写
# 实例化类创建对象:对象名=类名()
pen = Turtle( )
从turtle库中导入Turtle类。
编写代码时不需要通过库名来引用它们,直接使用类名即可。
3.3 导入库中的所有内容
【语法】
from turtle import *
导入turtle库中的所有所有函数和类,可以直接使用库中的函数和类,无需加前缀。
【代码示例】
下面的代码可绘制一个正方形。
from turtle import *# 设置画笔速度
speed(1)# 绘制正方形
for _ in range(4):forward(100)right(90)# 关闭窗口
done()
3.4 为导入的库设置别名
【语法】
import numpy as np
将numpy库导入并设置了别名np。
调用时将库名numpy简写为np。
【代码示例】
import numpy as np
np.array()
3.5 为导入的函数或变量设置别名
【语法】
from math import sqrt as sq
将math库中的sqrt函数导入并设置了别名sq,可以直接使用sq()调用该函数。
【温馨提示】
在使用from … import …语句导入特定函数或变量时,如果库中存在与导入函数或变量同名的函数或变量,那么导入的函数或变量将会覆盖原有的函数或变量。
因此,在使用from … import …语句导入时,需要确保导入的函数或变量名称与现有名称不冲突,或者使用import … as …语句为导入的库设置别名,以避免命名冲突。
4. turtle库常用的绘图命令
# 画布控制
turtle.screensize() #设置画布的大小,可以指定宽度、高度和背景颜色。
turtle.setup(width=(),height=()) #:设置窗口的尺寸,但不改变画布大小,只改变可视区域## 画笔控制命令# 画笔颜色
pencolor() #返回当前画笔颜色
fillcolor()#设置或返回填充颜色# 画笔状态
penup() # 抬起画笔,移动时不绘制图形
pendown() # 落下画笔,移动时绘制图形# 画笔速度
speed(speed) #设置海龟的绘制速度,speed参数取值范围为0-10,0表示最快,10表示最慢# 画笔粗细
width(width)#设置画笔粗细,width参数为正整数,表示线条宽度# 画笔填充
begin_fill() # 开始填充图形
end_fill() # 结束填充图形# 画笔隐藏与显示
hideturtle() # 隐藏画笔。
showturtle() # 显示画笔。# 画笔形状
shape(shape) # shape参数可以是"arrow"、"turtle"、"circle"、"square"、"triangle"、"classic"等# 画笔方向
setheading(angle) # 设置海龟的朝向,angle参数是以度数为单位的角度值# 画笔清屏
reset() #清除当前窗口中的图形,重新设置海龟的初始位置和状态# 画笔回家
home() # 将海龟移动到初始位置# 画笔移动:
pen.forward(distance)#:向前移动指定的距离。
pen.backward(distance)#:向后移动指定的距离。
pen.left(angle)#:向左转指定的角度。
pen.right(angle)#:向右转指定的角度。
pen.circle(radius, extent=None, steps=None)#:画一个圆弧,指定半径和角度#其他功能:
pen.hideturtle()#:隐藏画笔图标
pen.showturtle()#:显示画笔图标
pen.speed(speed=None)#:设置画笔移动速度# 绘制文字:
pen.write(arg, font=("Arial", 8, "normal"))#:在当前位置写入文本
上述命令在后面的文章会逐一进行讲解。
【参考书籍】
《码上行动 用ChatGPT学会Python编程》