使用python生成五角星国旗
时间: 2023-10-24 18:28:11 浏览: 85
以下是使用 Python 生成五角星国旗的代码:
```python
import turtle
# 初始化
turtle.speed(0)
turtle.hideturtle()
# 绘制国旗红色背景
turtle.penup()
turtle.goto(-300, 200)
turtle.pendown()
turtle.begin_fill()
turtle.fillcolor("red")
for i in range(2):
turtle.forward(600)
turtle.right(90)
turtle.forward(400)
turtle.right(90)
turtle.end_fill()
# 绘制五角星
def draw_star(x, y, size):
turtle.penup()
turtle.goto(x, y)
turtle.pendown()
turtle.begin_fill()
turtle.fillcolor("yellow")
turtle.right(18)
for i in range(5):
turtle.forward(size)
turtle.right(144)
turtle.forward(size)
turtle.right(72 - 18)
turtle.end_fill()
# 绘制大五角星
draw_star(-170, 120, 120)
# 绘制四个小五角星
stars = [(-70, 160, 40), (-40, 120, 30), (-40, 80, 30), (-70, 40, 40)]
for star in stars:
draw_star(*star)
# 显示绘制结果
turtle.done()
```
代码解释如下:
1. 导入 turtle 库。
2. 初始化 turtle,设置画笔速度为 0(最快)。
3. 绘制国旗红色背景,先将画笔移动到左上角位置,然后绘制一个 600*400 的矩形,并填充为红色。
4. 定义一个函数 `draw_star`,用于绘制五角星。函数接收三个参数:五角星的中心点坐标(x, y)和五角星的大小(size)。
5. 在左上角绘制一个大五角星,中心点坐标为 (-170, 120),大小为 120。
6. 在右上角和左下角各绘制两个小五角星,分别位于坐标点 (-70, 160)、(-40, 120)、(-40, 80)、(-70, 40),大小为 40、30、30、40。
7. 最后显示绘制结果,等待用户关闭窗口。
运行代码后会弹出一个窗口,显示生成的五角星国旗。
阅读全文