使用 Python 的海龟绘图


Turtle 是一个用于绘制图形的 Python 库。导入 Turtle 后,我们可以使用诸如 forward、backward、right、left 等命令。这些命令将在我们使用时绘制不同的形状。当我们组合搜索命令时,我们可以在下面的示例中创建许多漂亮的图形,我们将看到一些简单的场景,然后是一些创建精美图形的复杂场景。

简单的 Turtle 命令

  • forward(10)  它将海龟(箭头)向前移动 10 像素。

  • backward(5)  它将海龟(箭头)向后移动 5 像素。

  •  right(35)  它将海龟(箭头)顺时针旋转 35 度。

  • left(55)  它将海龟(箭头)逆时针旋转 55 度。

  •  goto(x,y)  它将海龟(箭头)移动到 x, y 位置。

  •  dot() 它在当前位置创建一个点。

  •  shape(‘circle’) 它绘制一个圆形。

示例

让我们看看使用一些简单命令绘制的一些图形。

绘制星星

在下面的程序中,我们绘制了一个星星。我们选择适当的步骤来连续向前移动光标,然后向右移动以获得此结果。

示例

import turtle
star = turtle.Turtle()
for i in range(100):
   star.forward(100)
   star.right(144)
   turtle.done()

运行以上代码,我们得到以下结果。

输出

绘制字母 E

我们遵循类似的方法,其中海龟在所有四个方向移动以创建英文字母 E。

示例

import turtle
t=turtle.Turtle()
t.penup()
t.setpos(-20,40)
t.pendown()
t.pensize(10)
t.pencolor("pink")
t.forward(100)
t.backward(100)
t.right(90)
t.forward(100)
t.left(90)
t.forward(100)
t.backward(100)
t.right(90)
t.forward(100)
t.left(90)
t.forward(100)
turtle.done()

运行以上代码,我们得到以下结果。

输出

多个正方形

在下一个示例中,我们看到从一个共同点开始绘制多个正方形。我们使用通常的简单命令向前、向后移动,然后转动 90 度。

示例

import turtle
mult_square=turtle.Turtle()
def Multiple_Squares(length, colour):
mult_square.pencolor(colour)
mult_square.pensize(2)
mult_square.forward(length)
mult_square.right(90)
mult_square.forward(length)
mult_square.right(90)
mult_square.forward(length)
mult_square.right(90)
mult_square.forward(length)
mult_square.right(90)
mult_square.setheading(360)
for i in range(60,120,15):
   Multiple_Squares(i,"blue")
   turtle.done

运行以上代码,我们得到以下结果。

输出

螺旋六边形

这是一个非常有趣的例子,我们使用海龟创建螺旋结构。最终形状是六边形,并且在生成六边形的边时使用了各种颜色。

示例


import turtle
colors = [ "pink","yellow","blue","green","white","red"]
sketch = turtle.Pen()
turtle.bgcolor("black")
for i in range(200):
   sketch.pencolor(colors[i % 6])
   sketch.width(i/100 + 1)
   sketch.forward(i)
   sketch.left(59)

运行以上代码,我们得到以下结果。

更新于: 2019-12-23

25K+ 浏览量

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告