Turtle库 简介

什么是Turtle

首先,turtle库是一个点线面的简单图像库,能够完成一些比较简单的几何图像可视化。它就像一个小乌龟,在一个横轴为x、纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形。

Turtle库基础知识

1.画布(canvas)

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

2.画笔(pen)

2.1画笔的状态

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

2.2 画笔的属性

画笔(画笔的属性,颜色、画线的宽度等)

1) turtle.pensize():设置画笔的宽度;

2) turtle.pencolor():没有参数传入,返回当前画笔颜色,传入参数设置画笔颜色,可以是字符串如"green", "red",也可以是RGB 3元组。

3) turtle.speed(speed):设置画笔移动速度,画笔绘制的速度范围[0,10]整数,数字越大越快。

复制代码

2.3 绘图命令

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

2.3.1 画笔运动命令:

命令

说明

turtle.home()

将turtle移动到起点(0,0)和向东

turtle.speed(speed)

画笔绘制的速度范围[0,10]整数

turtle.forward(distance)

向当前画笔方向移动distance像素长

turtle.backward(distance)

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

turtle.right(degree)

顺时针移动degree°

turtle.left(degree)

逆时针移动degree°

turtle.pendown()

移动时绘制图形放下笔,,默认绘制

turtle.penup()

移动时不绘制图形,提起笔,用于另起一个地方绘制时用

turtle.circle(r,extent,step)

绘制一个指定半径、弧度范围、阶数(正多边形)的圆

turtle.dot(diameter,color)

绘制一个指定直径和颜色的圆

2.3.2 画笔控制命令:

命令

说明

turtle.pencolor()

画笔颜色

turtle.pensize(width)

画笔宽度(绘制图形时的宽度)

turtle.color(color1, color2)

同时设置pencolor=color1, fillcolor=color2

turtle.filling()

返回当前是否在填充状态

turtle.begin_fill()

准备开始填充图形

turtle.end_fill()

填充完成

turtle.hideturtle()

隐藏画笔的turtle形状

turtle.showturtle()

显示画笔的turtle形状

2.3.3 全局控制命令

命令

说明

turtle.clear()

清空turtle窗口,但是turtle的位置和状态不会改变

turtle.reset()

清空窗口,重置turtle状态为起始状态

turtle.undo()

取消最后一个图的操作

turtle.isvisible()

返回当前turtle是否可见

turtle.stamp()

复制当前图形

turtle.write(s , [font=("font-name",font_size,"font_type")])

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

2.2.3其他命令

命令

说明

turtle.mainloop()或turtle.done()

启动事件循环 -调用Tkinter的mainloop函数。必须是乌龟图形程序中的最后一个语句。

turtle.mode(mode=None)

设置乌龟模式(“standard”,“logo(向北或向上)”或“world()”)并执行重置。如果没有给出模式,则返回当前模式。

turtle.undo()

取消最后一个图的操作

turtle.isvisible()

返回当前turtle是否可见

turtle.stamp()

复制当前图形

turtle.write(s , [font=("font-name",font_size,"font_type")])

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

Turtle总结和展示

Turtle可以实现很多好玩的东西,例如我在知乎和其他地方看到别人画“小猪佩奇”,“叮当猫”,“花花草草”等,世界很大,还有很多好玩的等着我们!!!

def main():

setting()           #画布、画笔设置

nose(-100,100)      #鼻子

head(-69,167)       #头

ears(0,160)         #耳朵

eyes(0,140)         #眼睛

cheek(80,10)        #腮

mouth(-20,30)       #嘴

body(-32,-8)        #身体

hands(-56,-45)      #手

foot(2,-177)        #脚

tail(148,-155)      #尾巴

done()              #结束

复制代码

代码:https://github.com/SCUTPZW/-visualization

https://github.com/AnthonyCoder/PythonSample/tree/master/turtle

主要参考:https://www.jianshu.com/p/df81a110cdfd

//www.zhihu.com/question/275611095/answer/382959285

附带解决No Module named tkinker的问题

https://blog.csdn.net/qq_33144323/article/details/80556954

用python画一个简单卡通人物,Python绘制可爱的卡通人物 | 【turtle使用】相关推荐

  1. 用python画一个简单的等边三角形

    用python画一个简单的等边三角形 用python画一个简单的等边三角形,源码如下: from turtle import* speed(10) bgcolor("blue") ...

  2. 用python画一个简单卡通人物图片_用python画一只可爱的皮卡丘实例

    效果图 #!/usr/bin/env python # -*- coding:utf-8 -*- from turtle import * ''' 绘制皮卡丘头部 ''' def face(x,y): ...

  3. 用python画一个简单卡通人物画法_Python绘制可爱的卡通人物 | 【turtle使用】

    微信公众号:AI算法与图像处理若是你以为对你有帮助,欢迎关注.转发以及点赞哦-( ̄▽ ̄-)~ Turtle库 简介 什么是Turtle 首先,turtle库是一个点线面的简单图像库,可以完成一些比较简 ...

  4. 用python画一个简单卡通人物图片_Python绘制可爱的卡通人物 | 【turtle使用】

    Turtle库 简介 什么是Turtle 首先,turtle库是一个点线面的简单图像库,能够完成一些比较简单的几何图像可视化.它就像一个小乌龟,在一个横轴为x.纵轴为y的坐标系原点,(0,0)位置开始 ...

  5. 圣诞节快到了,教大家用Python画一个简单的圣诞树和烟花,送给那个她

    用Python画出圣诞树和烟花,瞧瞧我这简易版的吧 序言 圣诞树 效果展示 代码展示 圣诞树上加烟花 效果展示 代码展示 写在最后 序言 这不是圣诞节快到了,准备让让女朋友开心开心,也算是亲手做的,稍 ...

  6. ikun必学!python 画一个简单的只因

    大家好呀,我是阿潘. 现在有很多虚假的ikun 1.看似维护鸡哥,实则想吃鸡哥下的蛋 每次看到这种网络攻击,鼻子一酸,泪流不止.这个世界太不友善了,真的不知道面对那么多无端的谩骂他是怎么熬过来的.作为 ...

  7. 怎么用python画一个皮卡丘,用python画皮卡丘的代码

    python皮卡丘编程代码 import turtledef getPosition(x, y): (x) (y) print(x, y)class Pikachu: def __init__(sel ...

  8. python模拟一个简单的取款机,python简单区块链模拟详解

    最近学习了一点python,那就试着做一做简单的编程练习. 首先是这个编程的指导图,如下: 对的,类似一个简单区块链的模拟. 代码如下: class DaDaBlockCoin: #index 索引, ...

  9. 用python画一个房子_用Python动态地画一个房子

    用Python动态地画一个房子 Python代码狂人 Python代码大全 用Python动态画一个房子,我们可从上向下画,先画房顶,再依次画阁楼窗户.房屋主体.屋门及主屋窗户. 运行本程序前请确保已 ...

最新文章

  1. C#.NET通用权限管理在DB2数据库上运行的脚本参考 - 序列创建脚本参考
  2. JavaScript数据类型
  3. C语言回调函数demo(帮助理解)以海康isapiExternDemo回调函数为例
  4. 嵊州D5T2 折纸 folding
  5. protobuf 中的嵌套消息的使用 主要对set_allocated_和mutable_的使用
  6. 一起学习Windows Phone7开发(十八. Windows Phone7 Toolkit)
  7. 由Handle转换为控件
  8. ES6学习笔记(四)-数值扩展
  9. Flutter之SnackBar原理详解
  10. 计蒜客-跳跃游戏(贪心)
  11. 190130每日一句
  12. https 带端口_基于scapy模块的8种端口扫描
  13. 大学新颖的软件测试毕业论文题目50例
  14. 单层感知器为什么不能解决异或(XOR)问题
  15. 【openpyxl】插入图表(折线图)
  16. php实现QQ打开跳转浏览器,【网站】 简单通用微信QQ跳转浏览器打开代码
  17. BFD:Bidirectional Forwarding Detection 双向转发检测
  18. 山大郝老师 计算机学院,相约山大 一起扬帆远航
  19. 野路子解决微信服务器超时会把接口重新调起n次的方法
  20. 论文投稿指南——中文核心期刊推荐(化学)

热门文章

  1. Linux安装lrzsz
  2. 腾讯再次推出“王卡宽带”,大家觉得怎么样?
  3. 漫谈唯一设备ID,android开发工程师
  4. GBase 8c开发接口
  5. DS1302 时钟 51单片机实现时钟显示
  6. javascript笛卡称积
  7. 泛型中的 T、E、K、V,还记得嘛?
  8. [DP]hdu5234
  9. 华为linux默认密码,登录存储系统CLI管理界面(用户名+密码)
  10. pmp各种比较容易混淆的图