当前位置:主页 > python教程 > Python画个美队盾代码

Python画个美国队长队盾牌实例教程

发布:2019-06-19 15:44:08 213


我们帮大家精选了相关的编程文章,网友宋康复根据主题投稿了本篇教程内容,涉及到Python、美队盾牌、Python画个美队盾代码相关内容,已被386网友关注,下面的电子资料对本篇知识点有更加详尽的解释。

Python画个美队盾代码

详解用Python练习画个美队盾牌

0 环境

Python版本:3.6.6

操作系统:Mac OS Mojave 10.14.2

1 引言

最近我媳妇每天晚上吃饭时候也拿手机看,上厕所也在看。

看着看着还会笑?WTF?你在干嘛呢?

没错,她在看美队……

这男人比我帅?……

比我有钱?……

还是比我有腔调?……

答案很明显,我相信你们的眼睛都是雪亮的。

那问题来了,作为一个男人,怎么能忍?虽然是个明星,虽然是假的,虽然已经挽回不了败局了……那我就送个美队的盾牌给你吧……

这篇文章不是Turtle的入门篇,所以关于基本的画笔使用小胖不在这篇里赘述了。有兴趣的可以留言,我会根据你们的反馈来写一篇或者一个系列。

2 实战

先来看一个效果图:

详解用Python练习画个美队盾牌

用过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 出现unknown encoding: idna 的问题

    解决python 出现unknown encoding: idna 的问题

    发布:2022-09-07

    给大家整理了关于python的教程,这篇文章主要介绍了解决python出现 unknown encoding: idna 的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧


  • python中的lambda函数用法指南

    发布:2023-03-02

    Lambda函数是Python中的匿名函数,下面这篇文章主要给大家介绍了关于python中lambda函数用法的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下


  • 基于Python实现成语填空游戏的示例代码

    发布:2023-04-07

    成语填空想必大家都是十分熟悉的了,特别是有在上小学的家长肯定都有十分深刻的印象。当然了你也别小看了成语调控小游戏,有的时候知识储备不够,你还真的不一定猜得出来是什么。本文就来用Python编写一个简单的成语填空游戏,感兴趣的可以了解下


  • 《Python编程:从入门到实践》DEMO实例代码

    发布:2018-12-01

    一、前言 之前,项目后台基本都是使用 Java 的 SpringBoot 框架完成的, 而 Python 自去年到现在,一直以来,都是玩着学的,没有想过要应用到项目上。 但近来,科技园这边的吴老师,建议项目中使用 Python 的 Django 框架做后台,因其容易拓展、维护等,这是笨重的 Java 难以企及的。 是时候认真对待 Python ,近来其也火得不行了~ 花了一天跳读了一本评价极好的书《Python编程从入门到


  • Python使用requirements.txt和pip打包批量安装的实现

    发布:2023-04-06

    本文主要介绍了Python使用requirements.txt和pip打包批量安装的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧


  • Python通过pip安装Django步骤代码

    发布:2020-01-25

    这篇文章主要介绍了Python 通过pip安装Django详细介绍的相关资料,需要的朋友可以参考下


  • python numpy和pandas中数组的合并、拉直和重塑代码分享

    发布:2020-01-12

    今天小编就为大家分享一篇numpy和pandas中数组的合并、拉直和重塑实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧


  • python fabric实现远程部署实例详解

    发布:2019-09-07

    这篇文章主要为大家详细介绍了 python fabric实现远程部署,具有一定的参考价值,感兴趣的小伙伴们可以参考一下


网友讨论