啥是佩奇?使用Python自动绘画小猪佩奇的代码实例


Posted in Python onFebruary 20, 2019

最近社会猪可是火遍了大江南北,不蹭下热度可对不起它。见过手画的佩奇,见过用代码画的吗?

没有?那就来看我大显身手。

用python的turtle库来画小猪佩奇。

有人问:turtle难不难?

答曰:不难,就那几个方法,跟入新手村的任务一样简单。难得是要有耐心跟一定的画画功底。

话不多说,直接上我苦苦搜寻(copy)而来的代码+注释版

温馨提示:您苦苦思念的佩奇猪在文末等你哦!

# coding:utf-8
import turtle as t
t.pensize(4) # 设置画笔的大小
t.colormode(255) # 设置GBK颜色范围为0-255
t.color((255,155,192),"pink") # 设置画笔颜色和填充颜色(pink)
t.setup(840,500) # 设置主窗口的大小为840*500
t.speed(10) # 设置画笔速度为10
#鼻子
t.pu() # 提笔
t.goto(-100,100) # 画笔前往坐标(-100,100)
t.pd() # 下笔
t.seth(-30) # 笔的角度为-30°
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.seth(90) # 笔的角度为90度
t.fd(25) # 向前移动25
t.seth(0) # 转换画笔的角度为0
t.fd(10)
t.pd()
t.pencolor(255,155,192) # 设置画笔颜色
t.seth(10)
t.begin_fill()
t.circle(5) # 画一个半径为5的圆
t.color(160,82,45) # 设置画笔和填充颜色
t.end_fill()
t.pu()
t.seth(0)
t.fd(20)
t.pd()
t.pencolor(255,155,192)
t.seth(10)
t.begin_fill()
t.circle(5)
t.color(160,82,45)
t.end_fill()
#头
t.color((255,155,192),"pink")
t.pu()
t.seth(90)
t.fd(41)
t.seth(0)
t.fd(0)
t.pd()
t.begin_fill()
t.seth(180)
t.circle(300,-30) # 顺时针画一个半径为300,圆心角为30°的园
t.circle(100,-60)
t.circle(80,-100)
t.circle(150,-20)
t.circle(60,-95)
t.seth(161)
t.circle(-300,15)
t.pu()
t.goto(-100,100)
t.pd()
t.seth(-30)
a=0.4
for i in range(60):
  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.color((255,155,192),"pink")
t.pu()
t.seth(90)
t.fd(-7)
t.seth(0)
t.fd(70)
t.pd()
t.begin_fill()
t.seth(100)
t.circle(-50,50)
t.circle(-10,120)
t.circle(-50,54)
t.end_fill()
t.pu()
t.seth(90)
t.fd(-12)
t.seth(0)
t.fd(30)
t.pd()
t.begin_fill()
t.seth(100)
t.circle(-50,50)
t.circle(-10,120)
t.circle(-50,56)
t.end_fill()
#眼睛
t.color((255,155,192),"white")
t.pu()
t.seth(90)
t.fd(-20)
t.seth(0)
t.fd(-95)
t.pd()
t.begin_fill()
t.circle(15)
t.end_fill()
t.color("black")
t.pu()
t.seth(90)
t.fd(12)
t.seth(0)
t.fd(-3)
t.pd()
t.begin_fill()
t.circle(3)
t.end_fill()
t.color((255,155,192),"white")
t.pu()
t.seth(90)
t.fd(-25)
t.seth(0)
t.fd(40)
t.pd()
t.begin_fill()
t.circle(15)
t.end_fill()
t.color("black")
t.pu()
t.seth(90)
t.fd(12)
t.seth(0)
t.fd(-3)
t.pd()
t.begin_fill()
t.circle(3)
t.end_fill()
#腮
t.color((255,155,192))
t.pu()
t.seth(90)
t.fd(-95)
t.seth(0)
t.fd(65)
t.pd()
t.begin_fill()
t.circle(30)
t.end_fill()
#嘴
t.color(239,69,19)
t.pu()
t.seth(90)
t.fd(15)
t.seth(0)
t.fd(-100)
t.pd()
t.seth(-80)
t.circle(30,40)
t.circle(40,80)
#身体
t.color("red",(255,99,71))
t.pu()
t.seth(90)
t.fd(-20)
t.seth(0)
t.fd(-78)
t.pd()
t.begin_fill()
t.seth(-130)
t.circle(100,10)
t.circle(300,30)
t.seth(0)
t.fd(230)
t.seth(90)
t.circle(300,30)
t.circle(100,3)
t.color((255,155,192),(255,100,100))
t.seth(-135)
t.circle(-80,63)
t.circle(-150,24)
t.end_fill()
#手
t.color((255,155,192))
t.pu()
t.seth(90)
t.fd(-40)
t.seth(0)
t.fd(-27)
t.pd()
t.seth(-160)
t.circle(300,15)
t.pu()
t.seth(90)
t.fd(15)
t.seth(0)
t.fd(0)
t.pd()
t.seth(-10)
t.circle(-20,90)
t.pu()
t.seth(90)
t.fd(30)
t.seth(0)
t.fd(237)
t.pd()
t.seth(-20)
t.circle(-300,15)
t.pu()
t.seth(90)
t.fd(20)
t.seth(0)
t.fd(0)
t.pd()
t.seth(-170)
t.circle(20,90)
#脚
t.pensize(10)
t.color((240,128,128))
t.pu()
t.seth(90)
t.fd(-75)
t.seth(0)
t.fd(-180)
t.pd()
t.seth(-90)
t.fd(40)
t.seth(-180)
t.color("black")
t.pensize(15)
t.fd(20)
t.pensize(10)
t.color((240,128,128))
t.pu()
t.seth(90)
t.fd(40)
t.seth(0)
t.fd(90)
t.pd()
t.seth(-90)
t.fd(40)
t.seth(-180)
t.color("black")
t.pensize(15)
t.fd(20)
#尾巴
t.pensize(4)
t.color((255,155,192))
t.pu()
t.seth(90)
t.fd(70)
t.seth(0)
t.fd(95)
t.pd()
t.seth(0)
t.circle(70,20)
t.circle(10,330)
t.circle(70,30)

啥是佩奇?使用Python自动绘画小猪佩奇的代码实例

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

Python 相关文章推荐
使用paramiko远程执行命令、下发文件的实例
Oct 01 Python
Python使用MD5加密算法对字符串进行加密操作示例
Mar 30 Python
在python中使用with打开多个文件的方法
Jan 07 Python
学习python分支结构
May 17 Python
python如何实现代码检查
Jun 28 Python
Python hashlib加密模块常用方法解析
Dec 18 Python
Python 内置变量和函数的查看及说明介绍
Dec 25 Python
logging level级别介绍
Feb 21 Python
Jupyter notebook无法导入第三方模块的解决方式
Apr 15 Python
如何表示python中的相对路径
Jul 08 Python
Python中logging日志的四个等级和使用
Nov 17 Python
python中slice参数过长的处理方法及实例
Dec 15 Python
Python实战购物车项目的实现参考
Feb 20 #Python
利用django+wechat-python-sdk 创建微信服务器接入的方法
Feb 20 #Python
python3+pyqt5+itchat微信定时发送消息的方法
Feb 20 #Python
钉钉群自定义机器人消息Python封装的实例
Feb 20 #Python
python3实现zabbix告警推送钉钉的示例
Feb 20 #Python
python实现图书借阅系统
Feb 20 #Python
python 调用钉钉机器人的方法
Feb 20 #Python
You might like
浅析PHP安装扩展mcrypt以及相关依赖项(PHP安装PECL扩展的方法)
2013/07/05 PHP
thinkphp微信开之安全模式消息加密解密不成功的解决办法
2015/12/02 PHP
php 时间time与日期date之间的使用详解及区别
2016/11/07 PHP
PHP get_html_translation_table()函数用法讲解
2019/02/16 PHP
tp5 实现列表数据根据状态排序
2019/10/18 PHP
在线编辑器中换行与内容自动提取
2009/04/24 Javascript
JQuery live函数
2010/12/24 Javascript
IE6、IE7中获取Button元素的值的bug说明
2011/08/28 Javascript
文本框获得焦点和失去焦点的判断代码
2012/03/18 Javascript
Javascript 遮罩层和加载效果代码
2013/08/01 Javascript
动态加载脚本提升javascript性能
2014/02/24 Javascript
JS中自定义定时器让它在某一时刻执行
2014/09/02 Javascript
node.js中的fs.lchmodSync方法使用说明
2014/12/16 Javascript
jquery图片滚动放大代码分享(1)
2015/08/25 Javascript
jquery mobile 移动web(5)
2015/12/20 Javascript
Angular.js去除页面中显示的空行方法示例
2017/03/30 Javascript
node.js平台下的mysql数据库配置及连接
2017/03/31 Javascript
详解nodejs微信公众号开发——2.自动回复
2017/04/10 NodeJs
使用mint-ui开发项目的一些心得(分享)
2017/09/07 Javascript
js 毫秒转天时分秒的实例
2017/11/17 Javascript
angularJs复选框checkbox选中进行ng-show显示隐藏的方法
2018/10/08 Javascript
解决VUE 在IE下出现ReferenceError: Promise未定义的问题
2020/11/07 Javascript
详解Vue中的自定义指令
2020/12/07 Vue.js
[02:27]《DAC最前线》之附加赛征程
2015/01/29 DOTA
Python OS模块常用函数说明
2015/05/23 Python
Python图像的增强处理操作示例【基于ImageEnhance类】
2019/01/03 Python
django的聚合函数和aggregate、annotate方法使用详解
2019/07/23 Python
Python如何生成xml文件
2020/06/04 Python
利用html5 canvas破解简单验证码及getImageData接口应用
2013/01/25 HTML / CSS
GUESS Factory加拿大:牛仔裤、服装及配饰
2019/09/20 全球购物
医学生自荐信范文
2013/12/03 职场文书
质量承诺书范文
2014/03/27 职场文书
2015年乡镇财政工作总结
2015/05/19 职场文书
甲午大海战观后感
2015/06/02 职场文书
小学见习报告
2015/06/23 职场文书
《攀登者》:“海拔8000米以上,你不能指望任何人”
2019/11/25 职场文书