python带五角星的同心圆
时间: 2023-10-17 21:16:15 浏览: 225
以下是使用turtle库实现带五角星的同心圆的Python代码:
```python
import turtle
# 设置画笔
pen = turtle.Turtle()
pen.speed(0)
pen.color("red")
# 绘制同心圆
for i in range(5):
pen.penup()
pen.goto(0, -i * 20)
pen.pendown()
pen.circle(20 + i * 20)
# 绘制五角星
pen.penup()
pen.goto(0, 0)
pen.setheading(0)
pen.pendown()
pen.begin_fill()
for i in range(5):
pen.forward(50)
pen.right(144)
pen.end_fill()
# 隐藏画笔
pen.hideturtle()
# 显示绘图窗口
turtle.done()
```
代码中先使用turtle库创建一个画笔对象pen,并设置画笔的速度和颜色。然后使用for循环绘制五个同心圆,每个圆的半径递增20个像素。接着使用pen.penup()和pen.pendown()方法控制画笔的位置,绘制了一个五角星。最后隐藏画笔,显示绘图窗口。
相关问题
用python语言绘制长方形,正方形,五角星,10个同心圆,10个同切圆
可以使用Python的turtle库来实现这些图形的绘制。下面是绘制长方形、正方形、五角星、10个同心圆和10个同切圆的示例代码:
```python
import turtle
# 绘制长方形
turtle.forward(100)
turtle.left(90)
turtle.forward(50)
turtle.left(90)
turtle.forward(100)
turtle.left(90)
turtle.forward(50)
# 绘制正方形
turtle.penup()
turtle.goto(150, 0)
turtle.pendown()
turtle.forward(50)
turtle.left(90)
turtle.forward(50)
turtle.left(90)
turtle.forward(50)
turtle.left(90)
turtle.forward(50)
# 绘制五角星
turtle.penup()
turtle.goto(-150, -100)
turtle.pendown()
turtle.right(18)
for i in range(5):
turtle.forward(100)
turtle.right(144)
# 绘制10个同心圆
turtle.penup()
turtle.goto(0, -100)
turtle.pendown()
for i in range(10):
turtle.circle(10 * i)
# 绘制10个同切圆
turtle.penup()
turtle.goto(150, -100)
turtle.pendown()
for i in range(10):
turtle.circle(20 * (i + 1), 360)
```
运行代码后,可以看到窗口中出现了绘制的图形。注意,为了保持代码简洁性,有些绘图过程中需要移动画笔到特定位置,以保证不同图形之间的距离和位置符合要求。
用Python 半径从键盘读取,可调 五角星是内接的,用三角函数计算 。使用循环把底层的四个同心圆画出来,要求边框和填充颜色一致: 内接五角星在最上层: 海龟画图法完成。
好的,我可以为您提供代码实现。代码如下:
```python
import turtle
import math
# 读取半径
r = float(input("请输入半径:"))
# 初始化海龟画布
t = turtle.Turtle()
t.speed(0)
# 循环绘制同心圆
colors = ["red", "orange", "yellow", "green"]
for i in range(4):
t.penup()
t.goto(0, -r*i*0.4)
t.pendown()
t.pencolor(colors[i])
t.fillcolor(colors[i])
t.begin_fill()
t.circle(r*i*0.4)
t.end_fill()
# 计算五角星的顶点坐标
x1, y1 = 0, r
x2, y2 = math.sin(math.radians(18))*r, math.cos(math.radians(18))*r
x3, y3 = math.sin(math.radians(54))*r, -math.cos(math.radians(54))*r
x4, y4 = -x3, y3
x5, y5 = -x2, y2
# 绘制五角星
t.penup()
t.goto(x1, y1)
t.pencolor("blue")
t.fillcolor("blue")
t.pendown()
t.begin_fill()
t.goto(x3, y3)
t.goto(x5, y5)
t.goto(x2, y2)
t.goto(x4, y4)
t.goto(x1, y1)
t.end_fill()
turtle.done()
```
运行代码,就可以看到绘制出的五角星和同心圆了。您可以根据需要修改代码中的参数,调整绘制出的图形大小和颜色。
阅读全文