python中用turtle绘图,画出的图形总是多出一条直线

我想用turtle绘制30个颜色,位置,边数和边长均不同的正多边形,题目只设三个参数n,s,c代表边数边长和颜色,但是我画出来总是最后有一个直线的拖尾,请问是哪句代码出了错,怎么改?

img

img

该回答引用ChatGPT

下面是一个使用Python中的turtle模块来实现绘制30个颜色、位置、边数和边长均不同的正多边形的示例代码:

import turtle
import random

def draw_polygon(n, s, c):
    """绘制边数为n、边长为s、颜色为c的正多边形"""
    turtle.color(c)
    turtle.begin_fill()
    for _ in range(n):
        turtle.forward(s)
        turtle.left(360 / n)
    turtle.end_fill()

# 设置画笔速度
turtle.speed('fastest')

# 循环绘制30个正多边形
for i in range(30):
    # 随机生成边数、边长和颜色
    n = random.randint(3, 10)
    s = random.randint(20, 100)
    c = (random.random(), random.random(), random.random())

    # 随机生成位置
    x = random.randint(-300, 300)
    y = random.randint(-300, 300)

    # 移动到指定位置并绘制正多边形
    turtle.penup()
    turtle.goto(x, y)
    turtle.pendown()
    draw_polygon(n, s, c)

# 点击窗口关闭
turtle.exitonclick()