使用Python的Turtle绘制哆啦A梦实例


Posted in Python onNovember 21, 2019

这是我几年前为了练习python的turtle库而画的,今天翻出了代码,分享给大家。

这是我初学python时画的,当时还没有面向对象的概念,也没有采取类方法之类,纯原始手工,供大家参考。

若有兴趣可以自行优化简洁代码,有时间我也会重新写一遍。

画出来的效果如下图:

使用Python的Turtle绘制哆啦A梦实例

代码如下:

# * -- utf-8 -- *
# Author: Tang
 
import turtle as t
 
t.speed(10)
t.pensize(8)
t.hideturtle()
t.screensize(500, 500, bg='white')
 
# 猫脸
t.fillcolor('#00A1E8')
t.begin_fill()
t.circle(120)
t.end_fill()
 
t.pensize(3)
t.fillcolor('white')
t.begin_fill()
t.circle(100)
t.end_fill()
 
t.pu()
t.home()
t.goto(0, 134)
t.pd()
t.pensize(4)
t.fillcolor("#EA0014")
t.begin_fill()
t.circle(18)
t.end_fill()
 
t.pu()
t.goto(7, 155)
t.pensize(2)
t.color('white', 'white')
t.pd()
t.begin_fill()
t.circle(4)
t.end_fill()
 
t.pu()
t.goto(-30, 160)
t.pensize(4)
t.pd()
t.color('black', 'white')
t.begin_fill()
a = 0.4
for i in range(120):
  if 0 <= i < 30 or 60 <= i < 90:
    a = a+0.08
    t.lt(3) #向左转3度
    t.fd(a) #向前走a的步长
  else:
    a = a-0.08
    t.lt(3)
    t.fd(a)
t.end_fill()
 
t.pu()
t.goto(30, 160)
t.pensize(4)
t.pd()
t.color('black', 'white')
t.begin_fill()
for i in range(120):
  if 0 <= i < 30 or 60 <= i < 90:
    a = a+0.08
    t.lt(3) # 向左转3度
    t.fd(a) # 向前走a的步长
  else:
    a = a-0.08
    t.lt(3)
    t.fd(a)
t.end_fill()
 
t.pu()
t.goto(-38,190)
t.pensize(8)
t.pd()
t.right(-30)
t.forward(15)
t.right(70)
t.forward(15)
 
t.pu()
t.goto(15, 185)
t.pensize(4)
t.pd()
t.color('black', 'black')
t.begin_fill()
t.circle(13)
t.end_fill()
 
t.pu()
t.goto(13, 190)
t.pensize(2)
t.pd()
t.color('white', 'white')
t.begin_fill()
t.circle(5)
t.end_fill()
 
t.pu()
t.home()
t.goto(0, 134)
t.pensize(4)
t.pencolor('black')
t.pd()
t.right(90)
t.forward(40)
 
t.pu()
t.home()
t.goto(0, 124)
t.pensize(3)
t.pencolor('black')
t.pd()
t.left(10)
t.forward(80)
 
t.pu()
t.home()
t.goto(0, 114)
t.pensize(3)
t.pencolor('black')
t.pd()
t.left(6)
t.forward(80)
 
t.pu()
t.home()
t.goto(0,104)
t.pensize(3)
t.pencolor('black')
t.pd()
t.left(0)
t.forward(80)
 
# 左边的胡子
t.pu()
t.home()
t.goto(0,124)
t.pensize(3)
t.pencolor('black')
t.pd()
t.left(170)
t.forward(80)
 
t.pu()
t.home()
t.goto(0, 114)
t.pensize(3)
t.pencolor('black')
t.pd()
t.left(174)
t.forward(80)
 
t.pu()
t.home()
t.goto(0, 104)
t.pensize(3)
t.pencolor('black')
t.pd()
t.left(180)
t.forward(80)
 
t.pu()
t.goto(-70, 70)
t.pd()
t.color('black', 'red')
t.pensize(6)
t.seth(-60)
t.begin_fill()
t.circle(80,40)
t.circle(80,80)
t.end_fill()
 
t.pu()
t.home()
t.goto(-80,70)
t.pd()
t.forward(160)
 
t.pu()
t.home()
t.goto(-50,50)
t.pd()
t.pensize(1)
t.fillcolor("#eb6e1a")
t.seth(40)
t.begin_fill()
t.circle(-40, 40)
t.circle(-40, 40)
t.seth(40)
t.circle(-40, 40)
t.circle(-40, 40)
t.seth(220)
t.circle(-80, 40)
t.circle(-80, 40)
t.end_fill()
 
# 领带
t.pu()
t.goto(-70, 12)
t.pensize(14)
t.pencolor('red')
t.pd()
t.seth(-20)
t.circle(200, 30)
t.circle(200, 10)
 
# 铃铛
t.pu()
t.goto(0, -46)
t.pd()
t.pensize(3)
t.color("black", '#f8d102')
t.begin_fill()
t.circle(25)
t.end_fill()
 
 
t.pu()
t.goto(-5, -40)
t.pd()
t.pensize(2)
t.color("black", '#79675d')
t.begin_fill()
t.circle(5)
t.end_fill()
 
t.pensize(3)
t.right(115)
t.forward(7)
 
t.mainloop()

以上这篇使用Python的Turtle绘制哆啦A梦实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
利用Python循环(包括while&amp;for)各种打印九九乘法表的实例
Nov 06 Python
Python基于百度AI的文字识别的示例
Apr 21 Python
python3获取当前文件的上一级目录实例
Apr 26 Python
python验证码识别教程之利用滴水算法分割图片
Jun 05 Python
Python 实现Windows开机运行某软件的方法
Oct 14 Python
Python CSV文件模块的使用案例分析
Dec 21 Python
python计算二维矩形IOU实例
Jan 18 Python
opencv python Canny边缘提取实现过程解析
Feb 03 Python
python如何查看网页代码
Jun 07 Python
如何在vscode中安装python库的方法步骤
Jan 06 Python
Python爬虫回测股票的实例讲解
Jan 22 Python
pytorch 如何把图像数据集进行划分成train,test和val
May 31 Python
Python 类的魔法属性用法实例分析
Nov 21 #Python
python画蝴蝶曲线图的实例
Nov 21 #Python
Python 静态方法和类方法实例分析
Nov 21 #Python
Python 用turtle实现用正方形画圆的例子
Nov 21 #Python
python 实现兔子生兔子示例
Nov 21 #Python
python3实现用turtle模块画一棵随机樱花树
Nov 21 #Python
用python中的matplotlib绘制方程图像代码
Nov 21 #Python
You might like
php设计模式 Decorator(装饰模式)
2011/06/26 PHP
Javascript与PHP验证用户输入URL地址是否正确
2014/10/09 PHP
php获取一定范围内取N个不重复的随机数
2016/05/28 PHP
8个超棒的学习 jQuery 的网站 推荐收藏
2011/04/02 Javascript
Jquery动态改变图片IMG的src地址示例
2013/06/25 Javascript
在ASP.NET中使用JavaScript脚本的方法
2013/11/12 Javascript
checkbox勾选判断代码分析
2014/06/11 Javascript
JavaScript生成随机数的4种自定义函数分享
2015/02/28 Javascript
深入学习jQuery Validate表单验证(二)
2016/01/18 Javascript
javascript简单实现等比例缩小图片的方法
2016/07/27 Javascript
值得分享的bootstrap table实例
2016/09/22 Javascript
springMVC + easyui + $.ajaxFileUpload实现文件上传注意事项
2017/04/23 Javascript
JavaScrpt中如何使用 cookie 设置查看与删除功能
2017/07/09 Javascript
vue自定义一个v-model的实现代码
2018/06/21 Javascript
node.js到底要不要加分号浅析
2018/07/11 Javascript
如何使用 vue + d3 画一棵树
2018/12/03 Javascript
JS获取本地地址及天气的方法实例小结
2019/05/10 Javascript
[02:20]DOTA2亚洲邀请赛 IG战队出场宣传片
2015/02/07 DOTA
[00:32]2018DOTA2亚洲邀请赛Secret出场
2018/04/03 DOTA
使用Python的Tornado框架实现一个简单的WebQQ机器人
2015/04/24 Python
pytorch中tensor的合并与截取方法
2018/07/26 Python
Python 变量类型详解
2018/10/10 Python
django 连接数据库 sqlite的例子
2019/08/14 Python
使用 Python 遍历目录树的方法
2020/02/29 Python
详解Python 循环嵌套
2020/07/09 Python
美国中小型企业领先的办公家具供应商:Office Designs
2016/11/26 全球购物
大学生个人总结的自我评价
2013/10/05 职场文书
汽车专业大学生职业生涯规划范文
2014/01/07 职场文书
新文化运动的基本口号
2014/06/21 职场文书
2015大学生入党个人自传
2015/06/26 职场文书
Sql-Server数据库单表查询 4.3实验课
2021/04/05 SQL Server
python 自动刷新网页的两种方法
2021/04/20 Python
Vue中插槽slot的使用方法与应用场景详析
2021/06/08 Vue.js
关于HTML编码导致的乱码问题
2021/09/04 HTML / CSS
PYTHON 使用 Pandas 删除某列指定值所在的行
2022/04/28 Python
win10截图快捷键win+shift+s没有反应无法截图怎么解决?
2022/08/14 数码科技