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文件去除注释的方法
May 25 Python
python实现中文分词FMM算法实例
Jul 10 Python
在Python的Django框架中生成CSV文件的方法
Jul 22 Python
详解Python编程中time模块的使用
Nov 20 Python
python pandas 对series和dataframe的重置索引reindex方法
Jun 07 Python
Python操作MySQL数据库的方法
Jun 20 Python
pandas筛选某列出现编码错误的解决方法
Nov 07 Python
python之验证码生成(gvcode与captcha)
Jan 02 Python
对YOLOv3模型调用时候的python接口详解
Aug 26 Python
Python函数基本使用原理详解
Mar 19 Python
Python文件时间操作步骤代码详解
Apr 13 Python
Python爬虫模拟登陆哔哩哔哩(bilibili)并突破点选验证码功能
Dec 21 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
PHP中HTTP方式下的Gzip压缩传输方法举偶
2007/02/15 PHP
如何使用php绘制在图片上的正余弦曲线
2013/06/08 PHP
对比PHP对MySQL的缓冲查询和无缓冲查询
2016/07/01 PHP
PHP实现模拟http请求的方法分析
2017/12/20 PHP
Laravel中如何轻松容易的输出完整的SQL语句
2020/07/26 PHP
不用构造函数(Constructor)new关键字也能实现JavaScript的面向对象
2013/01/11 Javascript
jQuery编辑器KindEditor4.1.4代码高亮显示设置教程
2013/03/01 Javascript
javascript搜索框点击文字消失失焦时文本出现
2014/09/18 Javascript
深入理解JavaScript系列(21):S.O.L.I.D五大原则之接口隔离原则ISP详解
2015/03/05 Javascript
谈谈JavaScript类型系统之Math
2016/01/06 Javascript
微信小程序开发教程-手势解锁实例
2017/01/06 Javascript
JavaScript该如何学习 怎样轻松学习JavaScript
2017/06/12 Javascript
bootstrap fileinput实现文件上传功能
2017/08/23 Javascript
微信小程序getPhoneNumber获取用户手机号
2017/09/29 Javascript
JavaScript 判断对象中是否有某属性的常用方法
2018/06/14 Javascript
详解nodejs 配置文件处理方案
2019/01/02 NodeJs
async/await让异步操作同步执行的方法详解
2019/11/01 Javascript
vue中路由跳转不计入history的操作
2020/09/21 Javascript
如何在vue中使用HTML 5 拖放API
2021/01/14 Vue.js
[50:17]Newbee vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
Python基于hashlib模块的文件MD5一致性加密验证示例
2018/02/10 Python
Python语言的变量认识及操作方法
2018/02/11 Python
python中的selenium安装的步骤(浏览器自动化测试框架)
2020/03/17 Python
Python爬虫爬取新闻资讯案例详解
2020/07/14 Python
关于HTML5+ API plusready的兼容问题
2020/11/20 HTML / CSS
Charlotte Tilbury美国官网:英国美妆品牌
2017/10/13 全球购物
联想香港官方网站及网店:Lenovo香港
2018/04/13 全球购物
英国第一的滑雪服装和装备零售商:Snow+Rock
2020/02/01 全球购物
用Python匹配HTML tag的时候,<.*>和<.*?>有什么区别
2012/11/04 面试题
模特职业生涯规划范文
2014/02/26 职场文书
安全生产管理合理化建议书
2014/03/12 职场文书
《她是我的朋友》教学反思
2014/04/26 职场文书
2014年母亲节寄语
2014/05/07 职场文书
2014年文艺部工作总结
2014/11/17 职场文书
2015会计试用期工作总结
2014/12/12 职场文书
CSS3 天气图标动画效果
2021/04/06 HTML / CSS