啥是佩奇?使用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 相关文章推荐
使用Python编写vim插件的简单示例
Apr 17 Python
Django中cookie的基本使用方法示例
Feb 03 Python
django session完成状态保持的方法
Nov 27 Python
python opencv判断图像是否为空的实例
Jan 26 Python
使用Python实现将list中的每一项的首字母大写
Jun 11 Python
Django 开发调试工具 Django-debug-toolbar使用详解
Jul 23 Python
python pandas dataframe 去重函数的具体使用
Jul 20 Python
Python unittest如何生成HTMLTestRunner模块
Sep 08 Python
python 绘制场景热力图的示例
Sep 23 Python
Python基于tkinter canvas实现图片裁剪功能
Nov 05 Python
五分钟学会怎么用python做一个简单的贪吃蛇
Jan 12 Python
利用For循环遍历Python字典的三种方法实例
Mar 25 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 设计模式系列之 specification规格模式
2016/01/10 PHP
在Laravel5.6中使用Swoole的协程数据库查询
2018/06/15 PHP
laravel5.5安装jwt-auth 生成token令牌的示例
2019/10/24 PHP
深入浅析安装PhpStorm并激活的步骤详解
2020/09/17 PHP
js 利用image对象实现图片的预加载提高访问速度
2013/03/29 Javascript
jquery模拟LCD 时钟的html文件源代码
2014/06/16 Javascript
JS数字抽奖游戏实现方法
2015/05/04 Javascript
JS实现淘宝支付宝网站的控制台菜单效果
2015/09/28 Javascript
基于jQuery实现收缩展开功能
2016/03/18 Javascript
js定时器实例分享
2016/12/20 Javascript
Javascript中字符串相关常用的使用方法总结
2017/03/13 Javascript
Angular2使用Guard和Resolve进行验证和权限控制
2017/04/24 Javascript
Webpack执行命令参数详解
2017/06/17 Javascript
vue的安装及element组件的安装方法
2018/03/09 Javascript
vue使用Element组件时v-for循环里的表单项验证方法
2018/06/28 Javascript
Vue.js样式动态绑定实现小结
2019/01/24 Javascript
js 获取扫码枪输入数据的方法
2020/06/10 Javascript
Python全局变量操作详解
2015/04/14 Python
Django渲染Markdown文章目录的方法示例
2019/01/02 Python
对Django url的几种使用方式详解
2019/08/06 Python
对Python 字典元素进行删除的方法
2020/07/31 Python
python基于socket模拟实现ssh远程执行命令
2020/12/05 Python
快速解决pymongo操作mongodb的时区问题
2020/12/05 Python
html5唤起app的方法
2017/11/30 HTML / CSS
美特斯邦威官方商城:邦购网
2016/10/13 全球购物
JD Sports德国官网:英国领先的运动鞋和运动服饰零售商
2018/02/26 全球购物
Python是如何进行类型转换的
2013/06/09 面试题
J2EE面试题大全
2016/08/06 面试题
总经理司机岗位职责
2014/02/06 职场文书
家长对老师的评语
2014/04/18 职场文书
人大调研汇报材料
2014/08/14 职场文书
2014年乡镇党建工作总结
2014/11/11 职场文书
见义勇为事迹材料
2014/12/24 职场文书
2015年秋学期教研工作总结
2015/10/14 职场文书
springboot+VUE实现登录注册
2021/05/27 Vue.js
ECharts transform数据转换和dataZoom在项目中使用
2022/12/24 Javascript