什么是Turtle?
turtle库是Python语言中一个很流行的绘制图像的函数库,可以想象一个小乌龟在爬行,它的爬行轨迹就是绘制出来的图形,在一个横轴为x、纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形。
一、画布的设置
方法:turtle.setup(width,height,startx,starty)
作用:设置主窗体的大小和位置
参数:
- width :窗口宽度,整数表示像素值,小数表示窗口宽度与屏幕的比例
- height: 窗口高度,整数表示像素值,小数表示窗口高度与屏幕的比例
- startx:窗口左侧与屏幕左侧的像素距离,None表示窗口位于屏幕水平中央
- starty:窗口顶部与屏幕顶部的像素距离,None表示窗口位于屏幕垂直中央
二、画笔的控制
函数 | 说明 |
down() | 画笔落下,移动时绘制图形 |
up() | 画笔抬起,移动时不绘制图形 |
setheading(degree) | 海龟朝向,degree代表角度 |
reset() | 恢复所有设置 |
pensize(width) | 画笔的宽度 |
pencolor(colorstring) | 画笔的颜色 |
fillcolor(colorstring) | 绘制图形的填充颜色 |
fill(True) | |
fill(False) | |
circle(radius,extent) | 绘制一个图形,其中radius为半径,extent为度数,例如若extent为180,则画一个半圆;如要画一个圆形,可不必写第二个参数 |
turtle.clear() | 清空turtle窗口,但是turtle的位置和状态不改变 |
turtle.reset() | 清空窗口,重置turtle状态为初始状态 |
turtle.undo() | 撤销上一个turtle动作 |
turtle.isvisible() | 返回当前turtle是否可见 |
stamp() | 复制当前图形 |
turtle.write(s[,font=("font-name",font_size,"font_type")]) | 写文本,s为文本内容,font是字体的参数,里面分别为字体名称,大小和类型;font为可选项,font的参数也是可选项 |
三、运动命令
函数 | 说明 |
forward(d) | 向前移动距离d代表距离 |
backward(d) | 向后移动距离d代表距离 |
right(degree) | 向右转动多少度 |
left(degree) | 向左转动多少度 |
goto(x,y) | 将画笔移动到坐标 |
stamp() | 绘制当前图形 |
speed(speed) | 画笔绘制的速度范围[0,10]整数 |
小海龟旋转时逆时针为正、顺时针为负,0度向东,90度向北,180度向西,270度向南;负值表示相反方向。
四、绘图实例
1、画一个边长为160的三角形
import turtle
a = 160
turtle.forward(a)
turtle.left(120)
turtle.forward(a)
turtle.left(120)
turtle.forward(a)
turtle.done() #done的作用是暂停程序,停止画笔绘制,但绘图窗体不关闭,没有它则窗口会在程序完成时立即关闭
2、画一个边长为160的正方形
import turtle
a = 160
turtle.pencolor("red")
turtle.pensize(10)
turtle.pendown()
turtle.begin_fill()#此方法在绘制要填充的形状之前调用
turtle.fillcolor("black")
turtle.forward(a)
turtle.left(90)
turtle.forward(a)
turtle.left(90)
turtle.forward(a)
turtle.left(90)
turtle.forward(a)
turtle.end_fill()
turtle.done()
3、画一个五角星
import turtle
turtle.color("red")
turtle.pensize(5)
for i in range(6):
turtle.forward(100)
turtle.right(144)
turtle.done()
4、画一个爱心
from turtle import *
def curvemove():
for i in range(200):
right(1)
forward(1)
color("red","pink")
begin_fill()
left(140)
forward(111.65)
curvemove()
left(120)
curvemove()
forward(111.65)
end_fill()
done()
补充
典型RGB颜色对照表
英文名称 |
R.G.B. |
十六进制 |
中文名称 |
white |
255 255 255 |
#FFFFFF |
白色 |
black |
0 0 0 |
#000000 |
黑色 |
grey |
190 190 190 |
#BEBEBE |
灰色 |
darkgreen |
0 100 0 |
#006400 |
深绿色 |
gold |
255 215 0 |
#FFD700 |
金色 |
violet |
238 130 238 |
#EE82EE |
紫罗兰 |
purple |
160 32 240 |
#A020F0文章来源:https://www.toymoban.com/news/detail-779138.html |
紫色文章来源地址https://www.toymoban.com/news/detail-779138.html |
到了这里,关于【Python】-- Turtle绘图(使用代码画喜欢的图形!)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!