概述

昨天在网上看到有人利用turtle模块画出了五角星,觉得很好玩。晚上睡觉前想,这样的话其实可以画国旗啊。于是编写了下面的代码。可是!我并没有准确的设计方法,所以不敢擅自画国旗啊。如果谁有标准的设计方法,可以基于此代码画出五星红旗,比心。

代码示例

关于turtle的简单实用方法,网络上有很多相关文章,我这里就不详细的解释。我只说几个这里会用到的

画布(canvas)

turtle.screensize(canvwidth=None, canvheight=None, bg=None),参数分别为画布的宽(单位像素), 高, 背景颜色。

画笔(Pen)

turtle.pensize():设置画笔的宽度;

turtle.pencolor():没有参数传入,返回当前画笔颜色,传入参数设置画笔颜色,可以是字符串如"green", "red",也可以是RGB 3元组。

绘图命令

turtle.forward(distance) 向当前画笔方向移动distance像素长度

turtle.right(degree) 顺时针移动degree°

turtle.pendown() 移动时绘制图形,缺省时也为绘制

turtle.goto(x,y) 将画笔移动到坐标为x,y的位置

turtle.penup() 提起笔移动,不绘制图形,用于另起一个地方绘制

turtle.fillcolor(colorstring) 绘制图形的填充颜色

turtle.begin_fill() 准备开始填充图形

turtle.end_fill() 填充完成

首先要创建一个类,并定义基本属性

class Wjx(object):

def __init__(self,lenth,startpoint=[],angle=0,pensize=2,pencolor='yellow',fillcolor='yellow'):

self.lenth = lenth

self.startpoint = startpoint

self.angle = angle

turtle.pensize(pensize)

turtle.pencolor(pencolor)

turtle.fillcolor(fillcolor)

因为要连续话几个五角星,所以要有抬笔换位置的方法

def skip(self):

turtle.penup()

turtle.goto(self.startpoint)

turtle.pendown()

为了调用更方便,我加了__call__

def __call__(self):

if self.startpoint:

self.skip()

turtle.begin_fill()

self.arch()

turtle.end_fill()

这块是实际的构建五角星的部分

def arch(self):

if self.angle:

turtle.right(self.angle)

for _ in range(5):

turtle.forward(self.lenth)

turtle.right(144)

全部代码可看我的github:五角星

用python画国旗的程序_利用python画国旗(示例)相关推荐

  1. python快递分拣小程序_利用Python开发的ATM小程序

    最近在学习Python,便利用业余时间开发了一个模拟ATM抢银行的小程序,不废话,直接上程序 #!/usr/bin/env python #coding=utf-8 # Name: AtmCard.p ...

  2. python自动卸载win程序_利用python实现自动扫雷程序

    自动扫雷一般分为两种,一种是读取内存数据,而另一种是通过分析图片获得数据,并通过模拟鼠标操作,这里我用的是第二种方式. 一.准备工作 1.扫雷游戏 我是win10,没有默认的扫雷,所以去扫雷网下载 h ...

  3. python连接linux堡垒机_利用Python Paramiko开发linux堡垒机

    1.Paramiko模块下的demo.py程序 前面利用Python中的Paramiko模块可以进行SSH的连接,以及用来传送文件(SFTP),但是无论是哪一种方式,连接都是短暂的,并非是长连的,即一 ...

  4. python画一颗心_利用python画一颗心的方法示例

    前言 Python一般使用Matplotlib制作统计图形,用它自己的说法是'让简单的事情简单,让复杂的事情变得可能'.用它可以制作折线图,直方图,条形图,散点图,饼图,谱图等等你能想到的和想不到的统 ...

  5. python怎么重复程序_利用Python程序完成ABAQUS中的一些重复性操作

    对于建立过大型的ABAQUS分析模型的同学们,肯定会面对繁琐的重复性建模过程.比如对上百个点施加集中力,比如建立几百个耦合约束.这些重复性操作,如果使用cae操作的话,不仅费时,而且极其容易出错. 利 ...

  6. python计算器程序_利用Python代码编写计算器小程序

    1 importtkinter2 importtkinter.messagebox3 importmath4 classJSQ:5 6 7 def __init__(self):8 #创建主界面 9 ...

  7. 用python画动态皮卡丘_利用Python绘制萌萌哒的皮卡丘

    开发工具 Python版本:3.6.4 相关模块: turtle模块. 环境搭建 安装Python并添加到环境变量即可. 在cmd窗口运行"pikachu.py"文件即可. 效果如 ...

  8. python测速程序_利用Python对网站进行测速

    利用python可以编写的用于测试网站访问速率的代码,实现原理是输出打开某url的时间,并计算出访问100次的平均时间,最大时间和最小时间等等.根据时间的变化判断网站速度. 完整代码:import u ...

  9. 利用python从网页查找数据_利用Python模拟淘宝的搜索过程并对数据进行可视化分析...

    数据挖掘入门与实战 公众号: datadw 本文讲述如何利用Python模拟淘宝的搜索过程并对搜索结果进行初步的数据可视化分析. 搜索过程的模拟:淘宝的搜索页面有两种形式, 一种形式是, 2019/2 ...

最新文章

  1. iOS 关于Blocks
  2. 基于SSH实现健身俱乐部管理系统
  3. ubuntu12.04安装lamp的简单lamp
  4. 算法解读--递归(二)
  5. 服务器虚拟化架构设计,服务器虚拟化与数据中心I/O网络架构设计
  6. AI圈内卷?天池团聚请来专家集体“问诊”
  7. 2013-10-10
  8. spring使用@Value注解读取.properties文件时出现中文乱码问题的解决
  9. 数学之美-隐含马尔可夫模型-笔记
  10. cocostudio学习
  11. 安卓pdf阅读器_2020年双十一有哪些电纸书、电子书阅读器值得买?Kindle、掌阅、文石、科大讯飞哪个好?...
  12. nifi集群_nifi架构
  13. css3加号图标_css实现“加号”效果的实例代码
  14. 微信支付v3 AEAD_AES_256_GCM解密JS版本代码及验证 javascript
  15. CSCD.中国科学引文数据库核心库和引文库来源期刊列表(2007年-2008年)
  16. SQL练习题(一) 附答案
  17. 【项目预估】PERT(计划评审技术)
  18. python签到脚本_基于Python实现签到脚本过程解析
  19. edge函数闪退 matlab,Microsoft Edge闪退怎么办?Microsoft Edge闪退解决办法
  20. Mybatis的特性详解——动态SQL

热门文章

  1. centos7 安装docker 报错 conflicts with file from package
  2. Idea pull时 conflicts
  3. 音视频开发之旅(一)三种方式绘制图片
  4. 测试工作规范及岗位职责
  5. skype android添加好友,Skype for android使用教程
  6. 2、nginx常用配置----作为web服务端
  7. 攻防世界 Crypto高手进阶区 3分题 你猜猜
  8. 错了!王慧文要做的是OpenAl,不只是ChatGPT
  9. 美团CTO罗道锋离职 王慧文将兼任基础研发平台负责人
  10. 浏览器插件之ActiveX开发