Python使用Turtle模块绘制国旗的方法示例


Posted in Python onFebruary 28, 2021

turtle模块

turtle模块:python内置的绘图工具

turtle(海龟)模块,我们是用它来进行画图的,基本上就是画简单的直线,点,和曲线。

你可以把它想成一个小海龟,在沙滩上行走,然后留下的各种痕迹,使用Turtle模块可以绘制很多精美的图形。

基本操作(Turtle方法)

  • turtle.forward(step):前进step个像素
  • turtle.back(step):后退step个像素
  • turtle.right():右转一个角度
  • turtle.left():左转一个角度
  • turtle.pencolor(“string”):画笔颜色
  • turtle.fillcolor(“string”):填充颜色
  • turtle.speed(int):运动速度

其他的turtle方法可以参见python官网

https://docs.python.org/zh-cn/3.7/library/turtle.html

具体代码实现

# 绘画
# 中国国旗
# 转载请标明出处!!


import turtle
import time


def draw__stars(tur, step, x, y, arg):
 """
 绘制五角星
 :param tur: turtle object
 :param step: 五角星一条边的长度
 :param x: 开始绘制五角星的起点x坐标
 :param y: 开始绘制五角星的起点y坐标
 :param arg:
 :return:
 """
 tur.pencolor('yellow')
 tur.fillcolor('yellow')
 tur.up()
 tur.goto(x, y)
 tur.begin_fill()
 tur.down()
 tur.right(arg)
 tur.forward(step)
 tur.right(144)
 tur.forward(step)
 tur.right(144)
 tur.forward(step)
 tur.right(144)
 tur.forward(step)
 tur.right(144)
 tur.forward(step)
 tur.right(144)
 tur.end_fill()


def draw__flag(tur, wide, height):
 """
 绘制国旗的长方形形状
 :param tur: turtle object
 :param wide: the width of the flag
 :param height: the height of the flag
 :return: None
 """
 tur.pencolor('red')
 tur.fillcolor('red')
 tur.goto(- wide / 2, height / 2)
 tur.begin_fill()
 tur.forward(wide)
 tur.right(90)
 tur.forward(height)
 tur.right(90)
 tur.forward(wide)
 tur.right(90)
 tur.forward(height)
 tur.end_fill()


if __name__ == '__main__':
 """
 main 函数
 """
 # tur = turtle.Turtle()
 turtle.screensize(canvwidth=3000, canvheight=2000, bg=None)
 # 绘制star的turtle对象
 tur_star = turtle.Turtle()
 # 绘制flag的turtle对象
 tur_flag = turtle.Turtle()
 tur_flag.speed(3)
 tur_star.speed(3)
 # 隐藏turtle对象
 tur_star.hideturtle()
 tur_flag.hideturtle()
 # 间隔3秒,可以没有,这个是我调试时加上去的
 time.sleep(3)
 # 绘制长方形
 draw__flag(tur_flag, 630, 420)
 # 绘制五角星,在合适的位置进行绘制五角星
 # 调用五次函数绘制五颗五角星
 draw__stars(tur_star, step=60, x=-280, y=155, arg=0)
 draw__stars(tur_star, step=25, x=-182, y=177, arg=- 25)
 draw__stars(tur_star, step=25, x=-175, y=125, arg=41)
 draw__stars(tur_star, step=25, x=-208, y=79, arg=23)
 draw__stars(tur_star, step=25, x=-265, y=75, arg=48)
 # 使画面锁定
 turtle.done()

运行结果

Python使用Turtle模块绘制国旗的方法示例

总结

到此这篇关于Python使用Turtle模块绘制国旗的文章就介绍到这了,更多相关Python Turtle模块绘制国旗内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
在Python中使用mechanize模块模拟浏览器功能
May 05 Python
python网络爬虫学习笔记(1)
Apr 09 Python
Python+selenium实现自动循环扔QQ邮箱漂流瓶
May 29 Python
Python实现定时自动关闭的tkinter窗口方法
Feb 16 Python
Python中list循环遍历删除数据的正确方法
Sep 02 Python
基于Python新建用户并产生随机密码过程解析
Oct 08 Python
Python Django中间件使用原理及流程分析
Jun 13 Python
解决keras backend 越跑越慢问题
Jun 18 Python
Python 没有main函数的原因
Jul 10 Python
matplotlib 画动态图以及plt.ion()和plt.ioff()的使用详解
Jan 05 Python
用Python制作音乐海报
Jan 26 Python
关于python类SortedList详解
Sep 04 Python
Python页面加载的等待方式总结
Feb 28 #Python
Python Selenium操作Cookie的实例方法
Feb 28 #Python
Python Selenium异常处理的实例分析
Feb 28 #Python
python常量折叠基础知识点讲解
Feb 28 #Python
Django后端按照日期查询的方法教程
Feb 28 #Python
python元组拆包实现方法
Feb 28 #Python
python定义具名元组实例操作
Feb 28 #Python
You might like
利用discuz实现PHP大文件上传应用实例代码
2008/11/14 PHP
ThinkPHP中Session用法详解
2014/11/29 PHP
jquery 选择器部分整理
2009/10/28 Javascript
jquery入门—编写一个导航条(可伸缩)
2013/01/07 Javascript
Tab切换组件(选项卡功能)实例代码
2013/11/21 Javascript
jQuery实现hover合成事件的方法
2015/08/06 Javascript
jQuery获得字体颜色16位码的方法
2016/02/20 Javascript
浅谈angularJS中的事件
2016/07/12 Javascript
jQuery实现动态添加节点与遍历节点功能示例
2017/11/09 jQuery
webpack构建换肤功能的思路详解
2017/11/27 Javascript
详解Require.js与Sea.js的区别
2018/08/05 Javascript
angularjs获取到My97DatePicker选中的值方法
2018/10/02 Javascript
如何为vuex实现带参数的 getter和state.commit
2019/01/04 Javascript
使用webpack搭建vue项目实现脚手架功能
2019/03/15 Javascript
javascript异步编程的六种方式总结
2019/05/17 Javascript
vue 插件的方法代码详解
2019/06/06 Javascript
为什么Vue3.0使用Proxy实现数据监听(defineProperty表示不背这个锅)
2019/10/14 Javascript
TypeScript 引用资源文件后提示找不到的异常处理技巧
2020/07/15 Javascript
vue中keep-alive、activated的探讨和使用详解
2020/07/26 Javascript
Jquery cookie插件实现原理代码解析
2020/08/04 jQuery
Python实现的简单发送邮件脚本分享
2014/11/07 Python
详解Python中用于计算指数的exp()方法
2015/05/14 Python
利用python实现数据分析
2017/01/11 Python
mac系统安装Python3初体验
2018/01/02 Python
selenium3+python3环境搭建教程图解
2018/12/07 Python
Pytorch 数据加载与数据预处理方式
2019/12/31 Python
Python实现在线批量美颜功能过程解析
2020/06/10 Python
使用JS+CSS3技术:让你的名字动起来
2013/04/27 HTML / CSS
结婚典礼证婚词
2014/01/08 职场文书
《绿色蝈蝈》教学反思
2014/03/02 职场文书
医学生毕业自我鉴定
2014/03/26 职场文书
实验室标语
2014/06/21 职场文书
2014年小学教师工作自我评价
2014/09/22 职场文书
班级光棍节联谊会策划书
2014/10/10 职场文书
县委务虚会发言材料
2014/10/20 职场文书
python中requests库+xpath+lxml简单使用
2021/04/29 Python