Python实验2 turtle 库绘制进阶图形

实验任务:
绘制嵌套彩色五角星(大小逐层递减)
设计函数绘制自定义正多边形(边数与颜色参数化)
扩展:实现动态旋转花瓣图案。
源代码:

点击查看代码
import turtle


# 绘制嵌套彩色五角星
def nested_star():
    colors = ['red', 'orange', 'yellow', 'green', 'blue']
    size = 200
    turtle.speed(0)
    for i in range(5):
        turtle.pencolor(colors[i])
        turtle.pensize(3)
        # 移动到合适的起始位置
        turtle.penup()
        turtle.goto(0, size / 2)
        turtle.setheading(270)
        turtle.pendown()

        for _ in range(5):
            turtle.forward(size)
            turtle.right(144)
        size -= 40


# 绘制自定义正多边形
def draw_polygon(sides, color):
    angle = 360 / sides
    turtle.pencolor(color)
    turtle.pensize(3)
    # 移动到合适的起始位置
    turtle.penup()
    turtle.goto(-200, 0)
    turtle.pendown()

    for _ in range(sides):
        turtle.forward(100)
        turtle.right(angle)


# 实现动态旋转花瓣图案
def rotating_petals():
    turtle.speed(0)
    # 移动到合适的起始位置
    turtle.penup()
    turtle.goto(250, 0)
    turtle.pendown()

    for i in range(30):
        turtle.pencolor('pink')
        turtle.pensize(2)
        for _ in range(2):
            turtle.circle(100, 60)
            turtle.left(120)
        turtle.left(12)


# 主函数
def main():
    turtle.setup(800, 600)
    # 绘制嵌套彩色五角星
    nested_star()
    # 绘制自定义正多边形
    draw_polygon(6, 'purple')
    # 实现动态旋转花瓣图案
    rotating_petals()
    turtle.done()


if __name__ == "__main__":
    main()
运行截图:

posted @ 2025-04-18 10:33  是否未晚  阅读(70)  评论(0)    收藏  举报