目录

1、turtle库的调用

2、turtle库的构成

        2.1 画布

        2.2 画笔(海龟)

        2.3 绘图指令


        Turtle 库是 Python 的一个标准库,主要用于图像的绘制。想象您用一组组函数驾驭一只小小的乌龟,在无垠的沙滩(画布)上昂首阔步,纵横驰骋,画出一个个令人惊艳的图形,甭提多有成就感。

1、turtle库的调用

        参见 time库,主要有三种方式:

  • import turtle
  • from turtle import *
  • import turtle as t(或者任何您喜欢的别名)

2、turtle库的构成

        主要为画布,画笔和绘图命令,下面分述之。

        2.1 画布

        画布(canvas),也就是让海龟“挥毫泼墨”用于绘图的区域,单位为像素。创作之前您可以设置需要的大小和背景。

turtle.screensize(canvwidth=None,canvheight=None,bg=None)

        参数 canvwidth 和 canvheight 分别为画布的宽和高,bg 为背景颜色。空白示返回默认大小(400, 300)。

        如果要设定画布在屏幕中的初始位置,则需要使用下列代码:

turtle.setup(width,height,startx,starty)

        参数 width、height 为画布的宽和高,输入为整数时, 表示像素;为小数时,则表示占据电脑屏幕的比例,startx, starty 分别代表画布距离屏幕左、上边缘的像素距离,空白表示画布位于屏幕中心。(上图)

        2.2 画笔(海龟)

        在画布上,默认有一个以画布中心为原点的坐标轴,其上为一只面朝x轴方向的小乌龟。turtle绘图中,就是根据海龟的位置方向等定义画笔的状态。

        要准确理解海龟的位置方向,请参见 Turtle 库之坐标体系

        开始绘图之前,首先要设置画笔的属性(宽度,颜色等):

turtle.penzize()
turtle.pencolor()
turtle.speed()

        turtle.pensize():设置画笔的宽度(像素),别名 turtle.width();

        turtle.pencolor():设置画笔颜色,可以是字符串,如 'red',也可以是 RGB 3元组。空白为返回当前画笔颜色。

        turtle.speed():设置画笔移动速度,为 [0,10] 之间的整数,数字越大速度越快。

        2.3 绘图指令

        主要有运动指令、控制指令等。

        运动指令

指令别名说明

turtle.forward()

turtle.fd()

沿画笔当前方前进()像素
turtle.backward()

turtle.bk()

turtle.back()

沿画笔当前方后退()像素
turtle.right()turtle.rt()右转()度
turtle.left()turtle.lt()左转()度
turtle.goto(x,y)前往(x,y)坐标
turtle.setposition(x,y)turtle.setpos(x,y)定位(x,y)坐标
turtle.setx()设置x坐标
turtle.sety()设置y坐标
turtle.circle(r,angle)画以r为半径的圆弧或圆,角度为正,表示逆时针,为负,则为顺时针
turtle.setheading()turtle.seth()设置画笔朝向
turtle.home()回到原点
turtle.dot(r,'color')绘制一个指定直径及颜色的圆点

控制指令

指令别名说明

turtle.penup()

turtle.pu()

turtle.up()

抬起画笔
 turtle.pendown()

turtle.pd()

turtle.down()

落下画笔
turtle.isdown()画笔是否落下
turtle.fillcolor('color')填充(颜色)
turtle.color('pencolor', 'fillcolor')颜色设置,只有一项默认为画笔颜色
turtle.filling()是否填充
turtle.begin_fill()开始填充
turtle.end_fill()结束填充
turtle.hideturtle()turtle.ht()隐藏画笔
turtle.showturtle()turtle.st()显示画笔
turtle.clear()清空窗口,但是画笔的位置和状态不会改变
turtle.reset()重置画笔
turtle.undo()撤销上一个动作
turtle.isvisible()画笔是否可见
turtle.shape()设置画笔形状:'arrow', 'turtle', 'circle', 'square', 'triangle', 'classic',默认为classic
turtle.stamp()复制画笔形状(相当于印章)
turtle.clearstamp()清除当前印章
turtle.clearstamps()清除全部印章
turtle.write(s [,font=('font_name',font_size,'font_type')])写文本,s为文本内容,字体font是可选项,其名称,大小和类型等参数也是可选项
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐