2016-12-23 35 views
-2

2頭のカメを一度に動かしているように。例えば、私は2頭のカメを輸入し、次に両方を一緒に前進させようとします。これどうやってするの?Pythonでは、どのように2つのTurtleコマンドを同時に実行できますか?

+1

こんにちは、私は、StackOverflowへようこそ。あなたの質問に答えるために、より多くの文脈が必要です。どのライブラリやフレームワークを使用していますか?どのようにあなたのコードは今のように見えますか、これまでに何を試しましたか? –

+1

一度に両方のカメを見る必要がありますか?これはインタラクティブであるのか、プログラムであるのか?これは実際に達成されるのではなく、シミュレートできますか?あなたの質問にはもっと詳細が必要です。 –

答えて

-1
bob = turtle.Turtle() 
john = turtle.Turtle() 

def move_turtles(ammount): 
    for i in range(ammount // 10): 
     bob.forward(10) 
     john.forward(10) 

move_turtles(100) 

同じように使用することはできますが、同時に移動する方法はありません。カメはそれぞれ10ポイント移動するので、一緒に動いているような印象を与えますが、実際にはわずかな量だけ動きます。これは、操作(ammount // 10)を繰り返し、各繰り返しで10を移動するので、入力として50を与えると、5回10ポイント移動し、50になります。次に、移動するように関数をカスタマイズできます彼らは重なり合わないように、少しカメによって。

0

あなたはタイマーイベントを使用して、同時に独立して、複数のカメを移動することができます - あなたも、それらが異なる速度で移動することができ、両方の時間と空間に:

import turtle 

turtle.setworldcoordinates(0, -100, 100, 100) 

bob = turtle.Turtle(shape="turtle") 
bob.penup() 
bob.sety(20) 

john = turtle.Turtle(shape="turtle") 
john.penup() 
john.sety(-20) 

def move_bob(): 
    bob.forward(1) 
    if bob.xcor() < 90: 
     turtle.ontimer(move_bob, 75) 

def move_john(): 
    john.forward(2) 
    if john.xcor() < 90: 
     turtle.ontimer(move_john, 100) 

move_bob() 
move_john() 

turtle.exitonclick() 

他の人々はまた、これを達成するためにスレッドを使用しますタートル・モジュールにはタイマー・イベントが組み込まれています。

関連する問題