Python内置海龟(turtle)库绘图命令详解(一)

Stella981
• 阅读 1529

    本文主要介绍了用Python内置turtle库绘制图形的一些主要命令, turtle库是Python语言中一个很流行的绘制图像的函数库,原理是利用一个小海龟,坐标系原点(0,0)位置开始,根据一组函数指令的控制,在平面坐标系中移动,利用它爬行过的路径即可绘制图形。下面介绍turtle绘图的一些基础知识。

Python内置海龟(turtle)库绘图命令详解(一)

1.turtle的画布

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

1.1 设置画布大小命令如下有两个,分别如下:

(1).  turtle.screensize(width,height,bg)

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

例如:turtle.creensize(800,600,"green"),返回结果如下:

Python内置海龟(turtle)库绘图命令详解(一)

(2)  turtle.setup(width,height,startx,starty),参数:width,height:表示所设置画布的宽和高,单位为像素,(startx,starty):这一坐标表示矩形窗口左上角顶点的位置,startx为横向距离,starty为纵向距离。如果为空,则窗口位于屏幕中心。

例如:turtle.setup(800,800,100,100),效果如下:

Python内置海龟(turtle)库绘图命令详解(一)

1.2 设置画布的背景色与背景图片

  (1) turtle.bgcolor(color).此命令可以为画布设置制定背景色,参数color可以用字符串可以是字符串如"green","red",也可以是RGB三元组。

   (2) turtle.bgpic(picture).此命令可以将某张图片设置为画布背景。

例如要将图片"poetry.png"设置为画布背景,

Python内置海龟(turtle)库绘图命令详解(一)

需要用到以下命令。

turtle.bgpic('poetry.png')

效果如下:

Python内置海龟(turtle)库绘图命令详解(一)

2. turtle的画笔

    2.1 设置画笔的属性

    当铺好画布以后,我们不能立刻就开始绘图,在绘图前,首先要设置画笔了的属性与状态。对画笔属性设置的命令主要包含以下几个

命令

说明

turtle.pensize(width)

用于设置画笔的宽度(即粗细),width越大越粗

turtle.pencolor(color)

用于设置画笔的颜色,color参数可以是

字符串如"green","red",也可以是RGB三元组。

turtle.shape(shape)

用于设置画笔的形状,shape参数为字符串,主要包含

“turtle”乌龟形状,“square”正方形形状等

turtle.speed(speed)

用于设置画笔的移动速度。speed参数可以是字符串如“fast”,"slow"等,也可以是0到10间的整数

2.2 画笔绘图的命令

    操纵海龟绘图有着许多的命令,今天先介绍其中的几个

命令

说明

turtle.fd(dis)

沿当前画笔方向向前移动dist像素长度

turtle.bk(dist)

沿当前画笔相反方向移动dist像素长度

turtle.right(degree)

沿当前画笔方向向右转degree°

turtle.left(degree)

沿当前画笔方向向左转degree°

turtle.down()

将画笔放下,开始画图

turtle.up()

提起笔移动,不绘制图形

turtle.circle()

画圆,半径为正(负),表示圆心在画笔的左边(右边)画圆

setx( )

将当前x轴移动到指定位置

sety( )

将当前y轴移动到指定位置

setheading(degree)

用于设置画笔的方向,参数degree为画笔方向与海龟坐标系x轴正向的夹角度数

ht()

用于将画笔隐藏

3. 开始画图

下面给出一个用turtle库绘制炫酷螺旋线的实例:

Python内置海龟(turtle)库绘图命令详解(一)

演示效果如下:

(the end)

扫码关注公众号

Python内置海龟(turtle)库绘图命令详解(一)

推荐阅读

python海龟库(turtle)中颜色的表示方法

编程班第三期第二阶段第四次课课下小练习--用turtle库直角坐标系画

本文分享自微信公众号 - python 青少年编程(gh_73f62b58c679)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

点赞
收藏
评论区
推荐文章
blmius blmius
2年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
浅梦一笑 浅梦一笑
2年前
我惊了,python一行代码玩游戏!!!!
给IT入门加星标,提升编程技能freepythongames,一行代码就能进入使用Python开发的小游戏快乐玩耍!安装pip install freegamesPython包括随您的安装一起分发的大量标准库。标准库有一个称为Turtle的模块,这是一种向普通人介绍python编程的流行方法。今天介绍的所有游戏都是使用Python及其Turtle模块实现的。
Jacquelyn38 Jacquelyn38
2年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Karen110 Karen110
2年前
Python海龟绘图,绘出最靓丽的景色
Hello,大家好。我是Python进阶者。前言大家平时用程序画图的时候是不是都觉得比较棘手了,今天给大家介绍个神奇的画图模块turtle。它可以通过一些指令让画笔任意移动,可以说是很智能了。导入模块importturtleturtle基本用法一、设置画布大小要想画图就要先有画布,不然没法让图显示,我们可以先设置画布大小:turtle.scree
Stella981 Stella981
2年前
Python3:sqlalchemy对mysql数据库操作,非sql语句
Python3:sqlalchemy对mysql数据库操作,非sql语句python3authorlizmdatetime2018020110:00:00coding:utf8'''
Stella981 Stella981
2年前
Python之time模块的时间戳、时间字符串格式化与转换
Python处理时间和时间戳的内置模块就有time,和datetime两个,本文先说time模块。关于时间戳的几个概念时间戳,根据1970年1月1日00:00:00开始按秒计算的偏移量。时间元组(struct_time),包含9个元素。 time.struct_time(tm_y
Stella981 Stella981
2年前
Python有趣的小案例
导入turtle模块模块是python自带的工具箱,这里将工具箱导入就能使用了turtle模块是python用来画图的工具箱importturtle将turtle里的工具拿出来,赋给t变量照猫画虎用就是了,这些东西要到很后面才能理解t
Wesley13 Wesley13
2年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
3个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这