小猪佩奇python_python3 案例分享--小猪佩奇
python3 案例分享--小猪佩奇:
主要分为10个部分:鼻子、头、耳朵、眼睛、腮、嘴巴、身体、手臂、脚和尾巴,最后main()主函数调用运行,下面看下具体代码。
按先后顺序来划分,
1.鼻子源码,命名bizi.py
# coding: utf-8
import turtle as t
def draw_bizi():
t.pu()
t.goto(-100, 100)
t.pd()
t.seth(-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)
t.fd(a)
else:
a = a-0.08
t.lt(3)
t.fd(a)
t.end_fill()
t.pu()
t.seth(90)
t.fd(25)
t.seth(0)
t.fd(10)
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.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()
2.头的源码,命名head.py
# coding: utf-8
import turtle as t
def draw_head():
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)
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 += 0.08
t.lt(3)
t.fd(a)
else:
a -= 0.08
t.lt(3)
t.fd(a)
t.end_fill()
3.耳朵的源码,命名ear.py
# coding: utf-8
import turtle as t
def draw_ear():
"""
画小猪佩奇的耳朵
:return:
"""
t.color((255, 255, 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()
4.眼睛的源码,命名eyes.py
# coding: utf-8
import turtle as t
def draw_eyes():
"""
画小猪佩奇的眼睛
:return:
"""
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()
5.腮的源码,命名sai.py
# coding: utf-8
import turtle as t
def draw_sai():
"""
画小猪佩奇的腮
:return:
"""
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()
6.嘴巴的源码,命名mouse.py
def draw_mouse():
"""
画小猪佩奇的嘴
:return: null
"""
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)
7.身体的源码,命名为body.py
# coding: utf-8
import turtle as t
def draw_body():
"""
画小猪佩奇的身体
:return: null
"""
t.color((255, 99, 71), "red")
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()
8.手臂的源码,命名为hands.py
# coding: utf-8
import turtle as t
def draw_hands():
"""
画小猪佩奇的手
:return:
"""
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)
9.脚的源码,命名为legs.py
# coding: utf-8
import turtle as t
def draw_legs():
"""
画小猪佩奇的脚
:return:
"""
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)
10.尾巴的源码,命名为weiba.py
# coding: utf-8
import turtle as t
def draw_weiba():
"""
画小猪佩奇的尾巴
:return: null
"""
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)
11.main方法运行主函数,命名为main.py
import os, sys
BASE_DIR = os.path.dirname(os.path.abspath(__file__))
sys.path.append(BASE_DIR)
import turtle as t
from bizi import draw_bizi
import head
import ear
import eyes
import sai
import mouse
import body
import hands
from legs import draw_legs
from weiba import draw_weiba
def main():
"""
主函数
:return: null
"""
t.pensize(4)
t.colormode(255)
t.color((255, 155, 192), "pink")
t.setup(840, 500)
t.speed(10)
draw_bizi()
head.draw_head()
ear.draw_ear()
eyes.draw_eyes()
sai.draw_sai()
mouse.draw_mouse()
body.draw_body()
hands.draw_hands()
draw_legs()
draw_weiba()
t.exitonclick()
if __name__ == '__main__':
main()
最后的效果:
小猪佩奇python_python3 案例分享--小猪佩奇相关推荐
- python画图小猪佩奇_python 画个小猪佩奇
不知道大家小时候有没有学习过logo语言,就是操纵一只小王八,来画各种图案.博主小学微机课就学习了这个,最近发现python的turtle包就是logo语言,所以画个小猪佩奇和大家分享. 代码来自知乎 ...
- 近期活动盘点:AI Time:论道AI安全与伦理、大数据、AI在中国金融保险业的应用案例分享讲座...
想知道近期有什么最新活动?大数点为你整理的近期活动信息在此: AI Time"science debate 论道AI安全与伦理 2019年5月31日 如今,人工智能的社会角色不断更新迭代,越 ...
- linux下批量修改文件名精彩解答案例分享
######################################################### #linux下批量修改文件名精彩解答案例分享 #date:21:34 2011-11 ...
- 关闭 定时开启_【话说定时器系列】之四:STM32定时器更新事件及案例分享
STM32定时器是 ST MCU 内部最基础且常用的外设,实际应用尤为普遍.去年,电堂推出了<STM32 TIMER基础及常规应用介绍>,为大家梳理了 STM32 TIMER 的庞大内容, ...
- 企业大数据运用实战案例分享
一.企业大数据如何起步:从小数据到大数据 目前国内外关于大数据的谈论很多,大多是谈运营级别的,或者说从服务端.服务方提得较多一些.笔者要跟大家交流的问题是作为各类企业尤其是客户方的企业来说,大数据跟他 ...
- 老李案例分享:Weblogic性能优化案例
老李案例分享:Weblogic性能优化案例 POPTEST的测试技术交流qq群:450192312 网站应用首页大小在130K左右,在之前的测试过程中,其百用户并发的平均响应能力在6.5秒,性能优化后 ...
- 2020-12-14 Matlab 模糊控制 车辆泊车 案例分享
Matlab 模糊控制 车辆泊车 案例分享 最近看到了一个知网的文献,研究基于模糊控制的自动泊车,复现了论文, 模糊控制方法参看之前的文章: matlab模糊控制工具箱使用和模糊控制pid实例参考(一 ...
- 计算机网络第4版潘爱民_学术活动 钱江会计实务精英讲坛预告(第84期)| 何继昌 : 战略视角下之财务分析应用实践 兼选股案例分享...
钱江会计实务精英讲坛预告第84期 # 主题 战略视角下之财务分析应用实践 --兼选股案例分享 # 时间 2020年12月25日 2:00 pm---4:00 pm # 地点 C楼213 主讲人简介 何 ...
- 某大型数据中心离心式冷水机组 控制板UPS电源改造项目案例分享
摘 要 离心式冷水机组作为大部分数据中心的核心设备,其是否稳定.安全运行决定着数据中心制冷系统的安全运行.本文分析了某大型数据中心离心式冷水机组控制板UPS电源改造创新案例,分析了改造项目过程中可 ...
最新文章
- python计算1到100的和-Python3基础 sum,range 计算1到100的和
- Xcode7 beta 网络请求报错:The resource could not be loade
- Linux下网络socket编程——实现服务器(select)与多个客户端通信
- java 检索编号输出信息_java,_java 如何解析txt文档,输入检索信息,然后输出,java - phpStudy...
- python和nodejs哪个写爬虫好_PythonNodejs 哪个比较适合写爬虫
- Caffe学习-手写数字识别
- Ubuntu 12.04 部署 PostGIS 2.1
- python连接阿里云服务器_阿里云服务器python
- 【电商】电商后台设计—电商产品的用户体系
- word文件转pdf转换器11.0注册码
- 示波器FFT频谱分析的使用方法和注意点
- linux内存双通道,两根内存就是双通道?太年轻
- 互联网测试校招系列2:准备越充分,机会越大!
- 程序员应该怎么自学才能入门 ?我来聊聊自己的经历
- C# 微信开发-----微信会员卡(三)激活会员卡
- SpringBoot @RequestHeader注解接收请求头
- kali linux 渗透测试
- 康耐视智能相机与PLC交互详细流程(以Profinet通讯为例,此流程适合所有通讯协议)
- 史上最简单的Spring Security教程(八):用户登出成功LogoutSuccessHandler高级用法
- 测试测试测试测试测试测试测试测试测试测试测试测试测试测试测试测试
热门文章
- 面试第一个问题,请先做个自我介绍吧!
- 2019 全球科技行业薪资报告出炉:全栈开发受热捧,40 岁以上程序员收入最高!...
- 带标签的infogan及其代码解析
- CRC (Cyclic redundancy check) java 实现
- 加油站会员管理系统源码php_一对一直播源码的开发语音与操作模式分析讲解_源码吧...
- 服务通知——小程序消息推送、模板消息推送demo
- 【BLE】蓝牙4.2核心协议
- vue引用public目录下文件
- ESP8266小白之摸爬滚打经验
- JavaCV的配置及使用