使用 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+ 瀏覽量

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告