返回顶部
首页 > 资讯 > 后端开发 > Python >详解Python+Turtle绘制奥运标志的实现
  • 120
分享到

详解Python+Turtle绘制奥运标志的实现

2024-04-02 19:04:59 120人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

目录1.画圆2.画奥运标识3.重构代码4.美化标识5.总结最近了解了python Turtle,非常简单有趣。为了培养小朋友兴趣,写个turtle画奥运标志程序。 1. 画圆 tur

最近了解了python Turtle,非常简单有趣。为了培养小朋友兴趣,写个turtle画奥运标志程序。

1. 画圆

turtle属于内置包,无需安装。只要导入即可以画图,下面先写几行代码画圆。

import turtle
 
t = turtle.Pen()
t.circle(50)
t.getscreen()._root.mainloop()

导入turtle之后,创建Pen画笔t,避免后续代码。circle方法是画圆,最后是消息循环,让程序等待可以看到画图结果。

2. 画奥运标识

除了画圆方法,还有几个方法需要了解。

setposition # 设置位置,画布的中心位置是坐标0位置

penup() # 抬起笔,移动时不画。

pendown() # 落笔,开始画

请看下面代码,很容易理解:

import turtle

t = turtle.Pen()
t.circle(50)

t.penup()
t.setposition(-120, 0)
t.pendown()
t.circle(50)

t.penup()
t.setposition(60, 60)
t.pendown()
t.circle(50)

t.penup()
t.setposition(-60, 60)
t.pendown()
t.circle(50)

t.penup()
t.setposition(-180, 60)
t.pendown()
t.circle(50)

t.getscreen()._root.mainloop()

仅通过移动坐标就能达到目的,但这个代码不够精简,需要重构。

3. 重构代码

每次画圆,变化部分只有坐标,这里把坐标和半径抽取为参数,定义drawCircle方法,然后定义每个圆起始坐标并针对每个坐标调用drawCircle方法即可。请看代码:

import turtle

class DrawAoYun(turtle.Turtle):
    """Draw Olympics loGo"""

    def __init__(self):
        """DrawAoYun Constructor"""
        turtle.Turtle.__init__(self, shape="turtle")

    def drawCircle(self, x, y, radius=50):
        """
        Moves the turtle to the correct position and draws a circle
        """
        self.penup()
        self.setposition(x, y)
        self.pendown()
        self.circle(radius)

    def drawOlympicSymbol(self):
        """
        Iterates over a set of positions to draw the Olympics logo
        """
        positions = [(0, 0), (-120, 0), (60, 60), (-60, 60), (-180, 60)]
        for pos in positions:
            self.drawCircle(pos[0], pos[1])


if __name__ == "__main__":
    t = DrawAoYun()
    t.drawOlympicSymbol()

    turtle.getscreen()._root.mainloop()

这里定义类,继承turtle.Turtle,构造函数中调用父类__init__进行初始化,并设置画笔为乌龟样式。drawCircle方法定义画圆过程,位置和半径为参数,半径默认为50。drawOlympicSymbol方法先定义5个坐标列表,然后迭代调用drawCircle画圆,即完成了画奥运标识。

4. 美化标识

你可能觉得标识有点单调,没有颜色。我需要加上蓝色、黑色、红色和下面黄色和绿色,也要把画笔加粗点,最后在画上北京2008的文字。

import turtle

class DrawAoYun(turtle.Turtle):
    """Draw Olympics logo"""

    def __init__(self):
        """DrawAoYun Constructor"""
        turtle.Turtle.__init__(self, shape="turtle")
        self.width(5)

    def drawCircle(self, x, y, color,radius=50):
        """
        Moves the turtle to the correct position and draws a circle
        """
        self.penup()
        self.setposition(x, y)
        self.pendown()

        self.color(color)
        self.circle(radius)

    def drawOlympicSymbol(self):
        """
        Iterates over a set of positions to draw the Olympics logo
        """
        positions = [(0, 0, "green"), (-120, 0, "yellow"), (60, 60, "red"), (-60, 60, "black"), (-180, 60, "blue")]
        for x, y, color in positions:
            self.drawCircle(x, y, color)

    def drawText(self):
        """
        Draw text to the screen
        """
        self.penup()
        self.setposition(-120, 180)
        self.pendown()
        self.color("black")
        self.width(1)
        self.write("Beijing 2008", font=("Arial", 16, "bold"))


if __name__ == "__main__":
    t = DrawAoYun()
    t.drawOlympicSymbol()
    t.drawText()

    turtle.getscreen()._root.mainloop()

构造函数中通过width方法设置为5。drawCircle方法增加颜色参数,每次画之前使用self.color(color)设置颜色。drawOlympicSymbol方法中给每个坐标增加颜色元素。

drawText方法通过write方法画文字,其他代码基本一样。

5. 总结

turtle非常简单吧,如果需要更深入了解或想画一些更漂亮、复杂的图形,参考官方文档。

以上就是详解Python+Turtle绘制奥运标志的实现的详细内容,更多关于Python Turtle奥运标志的资料请关注编程网其它相关文章!

--结束END--

本文标题: 详解Python+Turtle绘制奥运标志的实现

本文链接: https://lsjlt.com/news/138674.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 详解Python+Turtle绘制奥运标志的实现
    目录1.画圆2.画奥运标识3.重构代码4.美化标识5.总结最近了解了Python Turtle,非常简单有趣。为了培养小朋友兴趣,写个turtle画奥运标志程序。 1. 画圆 tur...
    99+
    2024-04-02
  • python使用turtle绘制奥运五环
    python使用turtle绘制奥运五环 奥林匹克标志中五个环的大小,颜色,间距有固定的比例,规定圆的半径为45,五个圆的起始坐标为(-110,-25),(0,-25),(110,-25),(-55,...
    99+
    2023-10-20
    pygame python
  • python标准库turtle绘图怎么实现奥运五环
    这篇文章主要介绍了python标准库turtle绘图怎么实现奥运五环的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇python标准库turtle绘图怎么实现奥运五环文章都会有所收获,下面我们一起来看看吧。使用的...
    99+
    2023-06-30
  • python标准库turtle海龟绘图实现简单奥运五环
    为什么说奥运五环的绘制是最简单的,实际上它的绘制过程就是通过画笔画出五个相同大小的圆圈即可。不同的是圆圈的位置不同的。 开始之前,我特地去找了turtle的官网地址贴在下面,其实学习...
    99+
    2024-04-02
  • Python+Turtle实现绘制勾股树
    这次,我们用Turtle模块结合三角函数,绘制出这样的勾股树: 首先,导入模块 from turtle import * from math import sin,cos,ra...
    99+
    2023-01-05
    Python Turtle绘制勾股树 Python 勾股树 Python Turtle
  • Python+Turtle绘制可爱的小蜜蜂详解
    目录一、效果展示二、代码详解1.导入库2.播放音乐3.画小蜜蜂的头4.画脖子和腹部三、完整代码公众号中有个朋友私信我,想要帮忙画下小蜜蜂。 答应了有时间就帮忙画下,趁着五一休息,今天...
    99+
    2024-04-02
  • Python+Turtle绘制幸运草的示例代码
    目录一、效果展示二、代码详解1.导入库2.播放音乐3.定义画四叶草的函数4.调用函数绘制四叶草5.设置写文字的函数幸运草又名四叶草,一般指四叶的苜蓿、或车轴草。 在十万株苜蓿草中,你...
    99+
    2024-04-02
  • Python+Turtle实现绘制可爱的小仓鼠
    目录一、效果展示二、代码详解1.导入库2.播放音乐3.定义画小仓鼠头的函数4.定义画左眼和右眼的函数5.定义画嘴的函数一、效果展示 在介绍代码之前,先来看下本文的实现效果。 可以参...
    99+
    2024-04-02
  • 通过python-turtle库实现绘制图画
    目录1 图12 图23 图34 图45 图51 图1 第一个图是蚊香,感兴趣的小伙伴可以自己尝试在python中用turtle库绘制一下。 具体代码如下: #画蚊香 impor...
    99+
    2024-04-02
  • 详解Python如何利用turtle绘制中国结
    目录导语一、中国结01 平安喜乐1)效果图2)附代码二、中国结02心想事成1)效果图2)附代码三、中国结03烟火年年总结导语 春节是中国特有的传统节日,中国结是中华民族特有...
    99+
    2024-04-02
  • Python+Turtle绘制航海王草帽路飞详解
    目录一、程序运行1.效果展示-轮廓描绘2.效果展示-颜色填充二、实现过程1.绘图数据下载2.海龟绘图配置项3.轮廓绘制4.颜色填充:衣服、裤子5.颜色填充:草帽、腰带6.完整源码一、...
    99+
    2024-04-02
  • 基于Python+Turtle实现绘制简易的大风车
    目录前言Turtle绘制大风车保存为jpg图片绘制不同角度的图片图片合成 gif 动图前言 大风车,吱呀吱呦呦地转, 这里的风景呀真好看!天好看,地好看…&hellip...
    99+
    2024-04-02
  • 如何通过python-turtle库实现绘制图画
    这篇文章给大家分享的是有关如何通过python-turtle库实现绘制图画的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1 图1第一个图是蚊香,感兴趣的小伙伴可以自己尝试在python中用turtle库绘制一下。...
    99+
    2023-06-22
  • python使用海龟turtle实现绘制汉字、中文
    一、实现要求         使用python中的turtle库绘制指定汉字、中文 二、实现思路        1、要想实现汉字的绘制,首先需要知道汉字的笔画坐标,汉字的笔画坐标在网上有,需要使用爬虫技术抓取到指定汉字的笔画坐标信息  ...
    99+
    2023-10-27
    python turtle 汉字 中文 绘制
  • Python中turtle绘图模块的详细讲解
    目录前言turtle基本概念调出模块引用turtle模块(库)方法例、写字函数write()的使用使用Python的turtle(海龟)模块画图步骤总结前言 turtle库是Pyth...
    99+
    2024-04-02
  • 基于Python+Turtle怎么实现绘制简易的大风车
    本篇内容主要讲解“基于Python+Turtle怎么实现绘制简易的大风车”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“基于Python+Turtle怎么实现绘制简易的大风车”吧!Turtle绘制...
    99+
    2023-07-01
  • 详解Python+Pyecharts实现漏斗图的绘制
    目录任务描述相关知识编程要求测试说明代码任务描述 本关任务:利用 PyEcharts 绘制一个基本的漏斗图。 相关知识 为了完成本关任务,你需要掌握: 1. Python 的基本语法...
    99+
    2024-04-02
  • Python实现甘特图绘制的示例详解
    目录前期准备页面的结构代码部分主页面的开发-Section 1主页页面的开发-Section 2相信大家在平常实际工作当中,需要对整体的项目做一个梳理,这时如果有一个网页应用能够对整...
    99+
    2023-05-15
    Python绘制甘特图 Python甘特图
  • python实例小练习之Turtle绘制南方的雪花
    导语 又到了裹紧被子,穿起秋裤的季节! 这些天,我们这边开始下雨了,温度瞬间降了10几度。 遭受了秋天第一场寒潮的“侵袭”,我是真的冷,一大早穿上了长裙。 寒风呼啸,大雪飘飘,咳咳...
    99+
    2024-04-02
  • Python+Pygame绘制小球的实例详解
    目录1.准备工作2.开始制作1.创建一个小球2.创建逐渐变大的小球3.创建一个自由下落的小球4.用if语句实现循环下落5.做一个循环上下反弹的小球1.准备工作 1.在文件里找到设置 ...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作