日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

python中setpos_如何用类初始化Python中的多个turtle

發布時間:2024/7/19 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python中setpos_如何用类初始化Python中的多个turtle 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

only one turtle shown on screen. Two are defined in the code below.

the turtle's heading and coordinates aren't being initialized.

我相信問題是你定義了一次隨機的位置和方向,在海龜創造循環之外,所以它們都從同一個地方開始,以相同的速度朝同一個方向移動。一、 他們就在彼此之上。在

我們不需要@BlivetWidget的顯式List來解決這個問題,因為正如您所發現的,海龜已經被維護在一個列表中,我們可以通過屏幕的turtles()方法獲得該列表。下面是我對您的代碼進行的修改,以解決各種問題:from turtle import Screen, Turtle

from random import randrange, randint

# parameters

COLORS = ['green', 'blue', 'red', 'orange', 'white']

ITERATIONS = 500

VELOCITY = 5

BOX_SIZE = 512

# setting up screen

screen = Screen()

screen.setup(BOX_SIZE + 50, BOX_SIZE + 50)

screen.bgcolor('black')

screen.tracer(False)

# drawing box

turtle = Turtle()

turtle.hideturtle()

turtle.color('cyan')

turtle.penup()

turtle.goto(-BOX_SIZE/2, -BOX_SIZE/2)

turtle.pendown()

for _ in range(4):

turtle.forward(BOX_SIZE)

turtle.left(90)

# turtle

for color in COLORS:

angle = randrange(360)

x = randint(-BOX_SIZE/2, BOX_SIZE/2)

y = randint(-BOX_SIZE/2, BOX_SIZE/2)

turtle = Turtle()

turtle.color(color)

turtle.setheading(angle)

turtle.penup()

turtle.setposition(x, y)

turtle.pendown()

# turtle movement

for _ in range(ITERATIONS):

for turtle in screen.turtles():

turtle.forward(VELOCITY)

x, y = turtle.position()

if x >= BOX_SIZE/2:

turtle.penup()

turtle.setx(-BOX_SIZE/2)

turtle.pendown()

elif x <= -BOX_SIZE/2:

turtle.penup()

turtle.setx(BOX_SIZE/2)

turtle.pendown()

elif y >= BOX_SIZE/2:

turtle.penup()

turtle.sety(-BOX_SIZE/2)

turtle.pendown()

elif y <= -BOX_SIZE/2:

turtle.penup()

turtle.sety(BOX_SIZE/2)

turtle.pendown()

screen.update()

screen.exitonclick()

我同意@BlivetWidget的觀點,“你不需要創建一個類來將它們移動到你的起始位置”。我使用上面的一個簡單循環。在

總結

以上是生活随笔為你收集整理的python中setpos_如何用类初始化Python中的多个turtle的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。