📜  在Python中使用 Turtle 打印星形分形(1)

📅  最后修改于: 2023-12-03 15:07:55.292000             🧑  作者: Mango

在Python中使用 Turtle 打印星形分形

介绍

在Python中,可以使用Turtle库生成绘图,这是一个很有趣的绘图库。通过使用Turtle库的函数,我们可以在屏幕上生成一系列动态的图形,包括线条、正方形、多边形等等。此次我们将介绍如何使用Turtle库绘制出星形分形,让我们开始吧!

准备工作

Turtle库是Python默认的标准库,所以我们不需要额外安装它。在开始编写代码之前,我们需要先从Turtle库中导入Turtle函数库。

import turtle

如此一来,我们就可以很容易地使用Turtle库来创建绘图。

编写代码

接下来,让我们一起来编写代码吧。首先,我们创建一个新的Turtle。

pen = turtle.Turtle()

然后,我们需要给这只海龟设置一些基本属性,比如它的颜色、线条的粗细等等。我们来看一下下面的代码:

pen.color('red', 'yellow')
pen.pensize(2)
pen.speed(0)
pen.begin_fill()

接下来,我们可以使用Turtle库提供的函数来绘制我们的星形图案。这个星形图案由五个边相等的三角形构成,每个三角形的一边都相互连通,如下图所示:

star_fractal.png

我们可以编写一个函数来完成这个操作。

def draw_triangle():
    for i in range(3):
        pen.forward(100)
        pen.left(120)

我们使用for循环来绘制三角形。现在,我们已经可以使用这个函数来完成五个三角形的绘制了。

draw_triangle()
pen.left(60)
draw_triangle()
pen.left(60)
draw_triangle()
pen.left(60)
draw_triangle()
pen.left(60)
draw_triangle()

完成五个三角形的绘制后,我们需要使用Turtle库提供的函数将绘制的图形显示出来。

pen.end_fill()
turtle.done()
完整代码
import turtle

pen = turtle.Turtle()
pen.color('red', 'yellow')
pen.pensize(2)
pen.speed(0)
pen.begin_fill()

def draw_triangle():
  for i in range(3):
    pen.forward(100)
    pen.left(120)

draw_triangle()
pen.left(60)
draw_triangle()
pen.left(60)
draw_triangle()
pen.left(60)
draw_triangle()
pen.left(60)
draw_triangle()

pen.end_fill()
turtle.done()
结果展示

我们来看一下我们在Python中使用Turtle打印出来的星形分形图案吧!如下图所示:

star_fractal_result.png