2016-11-15 6 views
1

私は空白を描いていますが、このコードを手作業で書くのは大変だと思います。これを短縮し、下の変数をインクリメントするために 'forループ'を使用できますか?当然の変数をインクリメントするForループを使用して反復コードを短くします。

for i in range(4): 
    m = 0 
    print m[i].setAsHome() 

が、これはエラーを生成:

pos = 1000 

m1.setAsHome() # set position as zero for all of the commands 
m1.goTo(pos) # move to the original position oof the limit switch 
while(m1.isBusy()): 
    continue 
m1.free() # reset the motor 

while(m2.isBusy()): 
    continue 
m2.setAsHome() # set position as zero for all of the commands 
m2.goTo(pos) # move to the original position oof the limit switch 
while(m2.isBusy()): 
    continue 
m2.free() # reset the motor 

私の勘では、この線に沿って何かです。申し訳ありませんが初心者の質問が、私は確かにこれを短縮する方法が必要です。さらに、上のコードでは4つのモーターが含まれています。ありがとうございました。

答えて

4

あなたはモーターのリストが必要になります。

motors = [m1, m2, m3, m4] 

だから、forループを使用することができます。

for motor in motors: 
    motor.setAsHome() 
    motor.goTo(pos) 
+0

パーフェクト。ありがとう、私は応答を感謝します。 –

+0

美しいPythonの世界へようこそ! –

関連する問題