python画图教程(详解用Python练习画个美队盾牌)
类别:脚本大全 浏览量:1293
时间:2021-11-01 10:33:30 python画图教程
详解用Python练习画个美队盾牌
0 环境
python版本:3.6.6
操作系统:mac os mojave 10.14.2
1 引言
最近我媳妇每天晚上吃饭时候也拿手机看,上厕所也在看。
看着看着还会笑?wtf?你在干嘛呢?
没错,她在看美队……
这男人比我帅?……
比我有钱?……
还是比我有腔调?……
答案很明显,我相信你们的眼睛都是雪亮的。
那问题来了,作为一个男人,怎么能忍?虽然是个明星,虽然是假的,虽然已经挽回不了败局了……那我就送个美队的盾牌给你吧……
这篇文章不是turtle的入门篇,所以关于基本的画笔使用小胖不在这篇里赘述了。有兴趣的可以留言,我会根据你们的反馈来写一篇或者一个系列。
2 实战
先来看一个效果图:
用过turtle的都知道,画笔是需要抬手和落笔的。这一点一定要理解,因为计算机是很死板的,你的每一个动作都必须告诉他,包括gc。
所以你的画笔一旦落下,经过的每一处都会留下字迹。如果希望隔开一段距离就需要经过「抬笔」->「移动画笔」->「落笔」。
所以我们先把这个动作封装成一个函数:
|
def setpen(x, y): # 抬笔 t.penup() # 移动画笔到(x, y) t.goto(x, y) # 落笔 t.pendown() t.setheading( 0 ) |
接下来就来画盾牌。盾牌的话,注意观察美队盾牌,颜色是「红」->「白」->「红」->「蓝」。
这里有一个技巧,就是后面填充的圆圈背景色是可以覆盖之前画的圆圈的背景色。
|
def circle(x, y, r, color): # 为了保证画出的圆够圆,所以我们把圆的边设置的多一些 n = 36 angle = 360 / n pi = 3.1415926 # 周长 c = 2 * pi * r # 每条边的长度 l = c / n # 起始位置 start_x = x - l / 2 start_y = y + r # 移动画笔 setpen(start_x, start_y) # 选择画笔颜色 t.pencolor(color) # 选择背景色 t.fillcolor(color) # 填充 t.begin_fill() for i in range (n): t.forward(l) t.right(angle) t.end_fill() |
接下来就是画里面那个白色的五角星了,这里就不注释了,因为和画圈的过程差不多。
|
def five_star(l): setpen( 0 , 0 ) t.setheading( 162 ) t.forward( 150 ) t.setheading( 0 ) t.fillcolor( 'whitesmoke' ) t.begin_fill() t.hideturtle() t.penup() for i in range ( 5 ): t.forward(l) t.right( 144 ) t.end_fill() |
主函数:
|
def sheild(): circle( 0 , 0 , 300 , 'red' ) circle( 0 , 0 , 250 , 'white' ) circle( 0 , 0 , 200 , 'red' ) circle( 0 , 0 , 150 , 'blue' ) five_star( 284 ) if __name__ = = '__main__' : sheild() # 结束乌龟图 turtle.done() |
以上所述是小编给大家介绍的用python练习画个美队盾牌详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对开心学习网网站的支持!
您可能感兴趣
- python中的time时间模块使用知识(python实现简单日期工具类)
- python 循环遍历新方法(python for 循环获取index索引的方法)
- python编程ai人工智能(AI领域都在用Python即将被淘汰?网友预测未来的编程语言不会是TA)
- python用列表实现一个定时器(python 定时器,实现每天凌晨3点执行的方法)
- 怎么用python实现链表(Python3实现的判断回文链表算法示例)
- python字符处理的函数(Python字符串内置函数功能与用法总结)
- python中list用法(Python数据类型之List列表实例详解)
- python群聊提示(python-itchat 统计微信群、好友数量,及原始消息数据的实例)
- python 暗弱目标提取(Python提取频域特征知识点浅析)
- python numpy 安装(python3.6下Numpy库下载与安装图文教程)
- python统计出现文字最多的词(使用Python 统计高频字数的方法)
- python爬取酷狗收费音乐(python爬取酷狗音乐排行榜)
- python ip代理池(Python 实现域名解析为ip的方法)
- python支持面向对象的程序设计(Python面向对象程序设计之类的定义与继承简单示例)
- python第三方库的使用方法和作用(Python第三方库face_recognition在windows上的安装过程)
- python如何解压加密zip文件(python读取有密码的zip压缩文件实例)
- ()
- 书法欣赏 宋.志南诗《绝句》(宋.志南诗绝句)
- 每周一首古诗 《绝句》(每周一首古诗绝句)
- 蓝色代表什么(蓝色代表什么性格的人)
- 红色代表什么(红色代表什么情感和含义)
- 南宋志南和尚绝句 杨柳风似庙中来(南宋志南和尚绝句)
热门推荐
- sql server2012自动备份(SQL SERVER 2012数据库自动备份的方法)
- dede栏目标签怎么调用(dedecms调用当前文档中TAG标签利于内页优化提高收录量)
- python怎么实现链表(Python实现数据结构线性链表单链表算法示例)
- php检查语法(使用 PHP Masked Package 屏蔽敏感数据的实现方法)
- mysql8.0详解(MySQL 8.0 的 5 个新特性,太实用了!)
- HTML中h1到h6标签
- docker 查看目录映射(docker 文件存放路径, 修改端口映射操作方式)
- MVC中报get_RazorKeywords()错误的解决方法
- Web.config 图形化编辑器:ASPhere
- html5入门布局(吃透移动端 Html5 响应式布局)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9