python turtle绘图命令及案例


Posted in Python onNovember 23, 2021

一、绘图命令

操纵海龟绘图有很多命令,可以划分为三种:画笔运动命令、画笔控制命令、全局控制命令

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.penuo() 提起画笔,不绘制图形,用于另起一个地方绘制
turtle.circle() 画圆,半径为正(负),表示圆心在画笔的左边(右边)画圆
setx() 将当前x轴移动到指定位置
sety() 将当前y轴移动到指定位置
setheading(angle) 设置当前朝向为angle的角度
home() 设置当前画笔位置为原点,朝向向东 °

2、画笔控制命令

命令 说明
turtle.fillcolor(colorstring) 绘制图形填充颜色
turtle.color(color1, color2) 同时设置 pencolor = color1,fillcolor = color2
turtle.filling() 返回当前是否在填充状态
turtle.begin_fill() 准备开始填充图形
turtle.end_fill() 填充完成
turtle.hideturtle() 隐藏画笔的turtle形状
turtle.showturtle() 显示画笔的turtle形状

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

二、案例

1、案例一

熟悉turtle坐标体系

# 导入 turtle 模块 

import turtle as t

t.goto(100,100)

t.goto(100,-100)

t.goto(-100,-100)

t.goto(-100,100)

t.goto(0,0)

t.done()

python turtle绘图命令及案例

2、案例二

画笔自动绘图

# 用for循环初步实现画笔自动绘图

import turtle as t

for i in range(20):

    # 画笔向前移动

    t.forward(100 + 10 * i)

    # 顺时针旋转120°

    t.right(120)

t.done()

python turtle绘图命令及案例

3、案例三

显示画笔运动印记

 

# 用for循环初步实现画笔自动绘图并显示其印记

import turtle as t

for i in range(20):

    # 画笔向前移动

    t.forward(100 + 10 * i)

    #t.shape("turtle")  # 海龟

    #t.shape("circle")  # 圆

    t.shape("square")  # 正方形

    # 打印turtle印记

    t.stamp()

    # 顺时针旋转60°

    t.right(60)

t.done()

python turtle绘图命令及案例

4、案例四

画笔及填充控制

# 绘制金光闪闪的太阳

import turtle as t

# 为小数时表示占据电脑屏幕的比例

t.setup(width = 0.6, height = 0.6)

# t.pencolor("red")

t.color("red", "yellow")

t.begin_fill()

# 控制绘图时间

t.speed(20)

while True:

    t.forward(200)

    t.left(170)

    # print(t.pos())

    if abs(t.pos()) < 1:

        break

t.end_fill()

t.write("一颗金光闪闪的太阳", align = "right", font = ("Arial", 20, "normal"))

t.done()

python turtle绘图命令及案例

5、案例五

画圆形类的图

# 粉色的爱心

import turtle as t

t.setup(800,800)

t.speed(8)

# 设置画笔大小

t.pensize(10)

t.hideturtle()

t.pencolor("pink")

t.left(45)

t.forward(80)

t.circle(35,210)

t.right(150)

t.circle(35,210)

t.forward(80)

t.done()

python turtle绘图命令及案例

到此这篇关于 python turtle绘图命令及案例的文章就介绍到这了,更多相关 python turtle绘图内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python中的高级函数map/reduce使用实例
Apr 13 Python
python实现带错误处理功能的远程文件读取方法
Apr 29 Python
在Python中处理字符串之isdigit()方法的使用
May 18 Python
python中使用iterrows()对dataframe进行遍历的实例
Jun 09 Python
python将控制台输出保存至文件的方法
Jan 07 Python
让你Python到很爽的加速递归函数的装饰器
May 26 Python
Python使用Tkinter实现转盘抽奖器的步骤详解
Jan 06 Python
Python log模块logging记录打印用法解析
Jan 20 Python
Python re正则表达式元字符分组()用法分享
Feb 10 Python
Python关于拓扑排序知识点讲解
Jan 04 Python
python学习之panda数据分析核心支持库
May 07 Python
Python获取字典中某个key的value
Apr 13 Python
python机器学习Github已达8.9Kstars模型解释器LIME
如何在python中实现ECDSA你知道吗
Python jiaba库的使用详解
Nov 23 #Python
python 中的jieba分词库
Nov 23 #Python
python周期任务调度工具Schedule使用详解
Nov 23 #Python
python百行代码实现汉服圈图片爬取
python可视化大屏库big_screen示例详解
You might like
深入探讨:Nginx 502 Bad Gateway错误的解决方法
2013/06/03 PHP
简单的cookie计数器实现源码
2013/06/07 PHP
linux系统下php安装mbstring扩展的二种方法
2014/01/20 PHP
PHP入门教程之字符串处理技巧总结(转换,过滤,解析,查找,截取,替换等)
2016/09/11 PHP
jquery+thinkphp实现跨域抓取数据的方法
2016/10/15 PHP
golang实现php里的serialize()和unserialize()序列和反序列方法详解
2018/10/30 PHP
Ext 今日学习总结
2010/09/19 Javascript
11个用于提高排版水平的基于jquery的文字效果插件
2012/09/14 Javascript
A标签触发onclick事件而不跳转的多种解决方法
2013/06/27 Javascript
javascript的动态加载、缓存、更新以及复用(一)
2014/06/09 Javascript
jquery实现带缩略图的可定制高度画廊效果(5种)
2015/08/28 Javascript
jQuery实现简单下拉导航效果
2015/09/07 Javascript
JS读取XML文件数据并以table形式显示数据的方法(兼容IE与火狐)
2016/06/02 Javascript
微信js-sdk预览图片接口及从拍照或手机相册中选图接口用法示例
2016/10/13 Javascript
微信小程序页面间通信的5种方式
2017/03/31 Javascript
JavaScript中toLocaleString()和toString()的区别实例分析
2018/08/14 Javascript
ES6 Set结构的应用实例分析
2019/06/26 Javascript
在vue中动态修改css其中一个属性值操作
2020/12/07 Vue.js
[02:53]DOTA2英雄昆卡基础教程
2013/11/25 DOTA
python多线程threading.Lock锁用法实例
2014/11/01 Python
Python操作Word批量生成文章的方法
2015/07/28 Python
python 除法保留两位小数点的方法
2018/07/16 Python
Flask框架URL管理操作示例【基于@app.route】
2018/07/23 Python
Python 给定的经纬度标注在地图上的实现方法
2019/07/05 Python
Matplotlib中%matplotlib inline如何使用
2020/07/28 Python
纯CSS绘制漂亮的圆形图案效果
2014/05/07 HTML / CSS
软件测试有哪些?什么是配置项?
2012/02/12 面试题
介绍一下Python下range()函数的用法
2013/11/07 面试题
幼儿园大班家长评语
2014/04/17 职场文书
村主任“四风”问题个人整改措施
2014/10/04 职场文书
离婚协议书样本
2015/01/26 职场文书
标准演讲稿格式结尾应该怎么书写?
2019/07/17 职场文书
使用numpy nonzero 找出非0元素
2021/05/14 Python
浅谈Redis主从复制以及主从复制原理
2021/05/29 Redis
用python批量解压带密码的压缩包
2021/05/31 Python
《火纹风花雪月无双》预告“神秘雇佣兵” 紫发剑客
2022/04/13 其他游戏