Python如何使用turtle库绘制图形

所属分类: 脚本专栏 / python 阅读数: 701
收藏 0 赞 0 分享

1. 前奏:

在用turtle绘制图形时,需要安装对应python的解释器以及IDE,我安装的是pycharm,在安装完pycharm后,在pycharm安装相应库的模块,绘图可以引入turtle模块,想要进行运算可以引入numpy模块。

需要注意: 在pycharm 中 turtle 是不支持提示的,可能是动态语言的一种毛病吧

turtle绘图常用的函数有:


操纵海龟绘图有着许多的命令,这些命令可以划分为两种:一种为运动命令,一种为画笔控制命令

(1)画笔运动命令:

命令 说明

  • turtle.forward(distance) 向当前画笔方向移动distance像素长
  • turtle.backward(distance) 向当前画笔相反方向移动distance像素长度
  • turtle.right(degree) 顺时针移动degree°
  • turtle.left(degree) 逆时针移动degree°
  • turtle.pendown() 移动时绘制图形,缺省时也为绘制
  • turtle.goto(x,y) 将画笔移动到坐标为x,y的位置
  • turtle.penup() 移动时不绘制图形,提起笔,用于另起一个地方绘制时用
  • turtle.speed(speed) 画笔绘制的速度范围[0,10]整数
  • turtle.circle() 画圆,半径为正(负),表示圆心在画笔的左边(右边)画圆

(2)画笔控制命令:

命令 说明

  • turtle.pensize(width) 绘制图形时的宽度
  • turtle.pencolor() 画笔颜色
  • turtle.fillcolor(colorstring) 绘制图形的填充颜色
  • turtle.color(color1, color2) 同时设置pencolor=color1, fillcolor=color2
  • turtle.filling() 返回当前是否在填充状态
  • turtle.begin_fill() 准备开始填充图形
  • turtle.end_fill() 填充完成;
  • turtle.hideturtle() 隐藏箭头显示;
  • turtle.showturtle() 与hideturtle()函数对应

(3) 全局控制命令

命令 说明

  • 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的参数也是可选项

2. 需要说明的

(1): 在画布上,默认有一个坐标原点为画布中心的坐标轴, 坐标原点上有一只面朝x轴正方向小乌龟. 这里我们描述小乌龟时使用了两个词语:坐标原点(位置),面朝x轴正方向(方向), turtle绘图中, 就是使用位置方向描述小乌龟(画笔)的状态 这个命令就是goto();

(2): turtle.circle(radius, extent=None, steps=None)描述: 以给定半径画圆

参数:

  • radius(半径); 半径为正(负),表示圆心在画笔的左边(右边)画圆
  • extent(弧度) (optional);
  • steps (optional) (做半径为radius的圆的内切正多边形,多边形边数为steps)

举例:

  • circle(50) # 整圆;
  • circle(50,steps=3) # 三角形;
  • circle(120, 180) # 半圆

(3) 填充 start_fill() end_fill()

参数为空 表示在一个画笔运动状态结束的时候,填充的内容颜色

3.具体例子:

绘制一个正方形

4.绘制 五角星

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

更多精彩内容其他人还在看

pandas的qcut()方法详解

这篇文章主要介绍了pandas的qcut()方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

从列表或字典创建Pandas的DataFrame对象的方法

这篇文章主要介绍了从列表或字典创建Pandas的DataFrame对象的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

pandas.DataFrame的pivot()和unstack()实现行转列

这篇文章主要介绍了pandas.DataFrame的pivot()和unstack()实现行转列,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

pandas中的series数据类型详解

这篇文章主要介绍了pandas中的series数据类型详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

pandas 时间格式转换的实现

这篇文章主要介绍了pandas 时间格式转换的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

python中时间、日期、时间戳的转换的实现方法

这篇文章主要介绍了python中时间、日期、时间戳的转换的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

pandas进行时间数据的转换和计算时间差并提取年月日

这篇文章主要介绍了pandas进行时间数据的转换和计算时间差并提取年月日,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

详解将Pandas中的DataFrame类型转换成Numpy中array类型的三种方法

这篇文章主要介绍了详解将Pandas中的DataFrame类型转换成Numpy中array类型的三种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

python和c语言的主要区别总结

在本篇文章里小编给各位整理了关于python和c语言的主要区别的相关知识帖内容,有需要的朋友们学习阅读下。
收藏 0 赞 0 分享

选择Python写网络爬虫的优势和理由

在本篇文章里小编给各位整理了一篇关于选择Python写网络爬虫的优势和理由以及相关代码实例,有兴趣的朋友们阅读下吧。
收藏 0 赞 0 分享
查看更多