使用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中条件选择和循环语句使用方法介绍
Mar 13 Python
基于Python实现的扫雷游戏实例代码
Aug 01 Python
简单的抓取淘宝图片的Python爬虫
Dec 25 Python
Python实现递归遍历文件夹并删除文件
Apr 18 Python
python微信跳一跳游戏辅助代码解析
Jan 29 Python
Flask 让jsonify返回的json串支持中文显示的方法
Mar 26 Python
解决python opencv无法显示图片的问题
Oct 28 Python
Python 实现两个服务器之间文件的上传方法
Feb 13 Python
python实现跨excel sheet复制代码实例
Mar 03 Python
Python利用Faiss库实现ANN近邻搜索的方法详解
Aug 03 Python
pycharm不以pytest方式运行,想要切换回普通模式运行的操作
Sep 01 Python
pytorch实现ResNet结构的实例代码
May 17 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
回答PHPCHINA上的几个问题:URL映射
2007/02/14 PHP
PHP写杨辉三角实例代码
2011/07/17 PHP
php生成RSS订阅的方法
2015/02/13 PHP
CodeIgniter控制器之业务逻辑实例分析
2016/01/20 PHP
PHP入门教程之正则表达式基本用法实例详解(正则匹配,搜索,分割等)
2016/09/11 PHP
基于PHP-FPM进程池探秘
2017/10/17 PHP
JS面向对象编程之对象使用分析
2010/08/19 Javascript
jquery打开直接跳到网页最下面、最低端实现代码
2013/04/22 Javascript
jQuery模拟点击A标记示例参考
2014/04/17 Javascript
一段非常简单的js判断浏览器的内核
2014/08/17 Javascript
JS实现一个按钮的方法
2015/02/05 Javascript
JS实现可关闭的对联广告效果代码
2015/09/14 Javascript
详解JavaScript中Hash Map映射结构的实现
2016/05/21 Javascript
javascript数据结构之串的概念与用法分析
2017/04/12 Javascript
MUI实现上拉加载和下拉刷新效果
2017/06/30 Javascript
使用layui+ajax实现简单的菜单权限管理及排序的方法
2019/09/10 Javascript
[01:14:55]EG vs Spirit Supermajor 败者组 BO3 第三场 6.4
2018/06/05 DOTA
python 运算符 供重载参考
2009/06/11 Python
python实现查找excel里某一列重复数据并且剔除后打印的方法
2015/05/26 Python
Python验证文件是否可读写代码分享
2017/12/11 Python
Python机器学习k-近邻算法(K Nearest Neighbor)实例详解
2018/06/25 Python
python基础梳理(一)(推荐)
2019/04/06 Python
Python3.7 新特性之dataclass装饰器
2019/05/27 Python
python2和python3实现在图片上加汉字的方法
2019/08/22 Python
解决Ubuntu18中的pycharm不能调用tensorflow-gpu的问题
2020/09/17 Python
python中pop()函数的语法与实例
2020/12/01 Python
CSS3为背景图设置遮罩并解决遮罩样式继承问题
2020/06/22 HTML / CSS
Tretorn美国官网:瑞典外套和鞋类品牌,抵御风雨
2018/07/19 全球购物
墨尔本最受欢迎的复古风格品牌:Princess Highway
2018/12/21 全球购物
百度软件工程师职位
2013/02/14 面试题
动物学专业毕业生求职信
2013/10/11 职场文书
银行简历自我评价
2014/02/11 职场文书
社会实践先进工作者事迹材料
2014/05/06 职场文书
群众路线自查报告及整改措施
2014/11/04 职场文书
毕业生党员个人总结
2015/02/14 职场文书
庆元旦主持词
2015/07/06 职场文书