Python学习之海龟绘图

一、基础介绍

“小海龟”turtle是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x、纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形。

海龟绘图(Turtle Graphics)是python2.6版本中后引入的一个简单的绘图工具,出现在1966年的Logo计算机语言。

二、启动海龟环境

在 Python中,导入 turtle 模块的所有对象:

海龟画图python菱形代码_Python

三、基本绘图

海龟有3个关键属性:方向、位置和画笔(笔的属性有色彩、宽度和开/关状态)

1. 画布(canvas)

画布就是turtle为我们展开用于绘图区域, 我们可以设置它的大小和初始位置。

海龟画图python菱形代码_Python_02

参数分别为画布的宽(单位像素),高,背景颜色

turtle.screensize(800,600,“green”)
turtle.screensize() #返回默认大小(400,300)

海龟画图python菱形代码_Python_03

setup()设置窗体大小及位置,参数:

width,height:输入宽和高为整数时,表示像素;为小数时,表示占据电脑屏幕的比例。

(startx,starty):这一坐标表示矩形窗口左上角顶点的位置,如果为空,则窗口位于屏幕中心。

如:turtle.setup(width=0.6, height=0.6)

turtle.setup(width=800,height=800,startx=100,starty=100)

2. 画笔

使用Pen()设定海龟画图对象,即画笔:turtle.Pen()

海龟画图python菱形代码_ide_04

代码执行后就建立了画布,同时屏幕中间可以看见箭头(arrow),即所谓的海龟。在海龟绘图中,海龟的起点即画布中央为 (0,0),移动单位是像素(pixel)。描述海龟时使用了两个词语:坐标原点(位置),面朝x轴正方向(方向), turtle绘图中, 就是使用位置方向描述海龟(画笔)的状态。

2.1设置画笔的颜色

海龟画图python菱形代码_Python_05

2.2设置画笔的宽度

海龟画图python菱形代码_绘制图形_06

2.3将海龟送回起点(这适用于海龟消失在屏幕之外的情况):

海龟画图python菱形代码_Python_07

3.简单尝试一下画一个三角形

注意事项 —— 因为一旦脚本结束,Python 将会同时关闭海龟的窗口,所有我们需要输入turtle.done()命令来阻止窗口关闭。

3.1让海龟前进100步

海龟画图python菱形代码_ide_08

你应该会看到(最可能的情况,是在你的显示器的一个新窗口中)海龟画出一条线段,方向朝东。

3.2改变海龟的方向,让它向左转 120 度(逆时针):

海龟画图python菱形代码_Python_09

3.3让我们继续画一个三角形:

海龟画图python菱形代码_绘制图形_10

4.画笔运动命令

turtle.forward()
turtle.backword()
turtle.right()
turtle.left()
turtle.goto()
turtle.speed()
turtle.circle()
turtle.penup()
turtle.pendown()

5.画笔控制命令

turtle.pensize()
turtle.pencolor()
turtle.fillcolor(color string)
turtle.color(color1,color2)
turtle.filling()
turtle.begin_fill()
turtle.end_fill()
turtle.hideturtle()
turtle.showturtle()

6.全局控制命令

turtle.clear()
turtle.reset()
turtle.uodo()
turtle.isvisible()
stamp()
turtle.writer(s[,”font=(font-name”,font_size,”font_type”)])

写文本,s为文本内容,font是字体的参数,里面分别为字体名称,大小和类型;font为可选项,font的参数也是可选项

7.绘图举例

7.1绘制正方形

海龟画图python菱形代码_ide_11

海龟画图python菱形代码_ide_12

7.2绘制太阳花

海龟画图python菱形代码_ide_13

海龟画图python菱形代码_python_14

7.3绘制旋转多边形

海龟画图python菱形代码_绘制图形_15

海龟画图python菱形代码_绘制图形_16

7.4绘制彩色多边形

海龟画图python菱形代码_海龟画图python菱形代码_17

海龟画图python菱形代码_Python_18

7.5绘制五角星

海龟画图python菱形代码_绘制图形_19

海龟画图python菱形代码_python_20

7.6绘制彩色五角星

海龟画图python菱形代码_绘制图形_21

海龟画图python菱形代码_python_22

7.7五环

海龟画图python菱形代码_绘制图形_23

海龟画图python菱形代码_python_24

7.8小猪佩奇

海龟画图python菱形代码_海龟画图python菱形代码_25

海龟画图python菱形代码_ide_26

海龟画图python菱形代码_ide_27

海龟画图python菱形代码_python_28

海龟画图python菱形代码_python_29

海龟画图python菱形代码_海龟画图python菱形代码_30

海龟画图python菱形代码_Python_31

海龟画图python菱形代码_海龟画图python菱形代码_32

海龟画图python菱形代码_python_33

海龟画图python菱形代码_ide_34

海龟画图python菱形代码_python_35

海龟画图python菱形代码_Python_36

海龟画图python菱形代码_ide_37