2017-07-08 3 views
0

"for"ループを作成したいと思います(Python 2で)。私は障害物のリストを持っており、それぞれの障害物について、それらが本当であれば(すなわち存在し、リストに現れている)、それらを「テスト」というリストに追加し、「obstacle_detection」という関数を呼び出したい障害物が検出されたときに発生します)(そして私は後で "テスト"を使います)。これははるかに大きなプログラムの一部であり、それが機能しているかどうかはかなり分かりませんので、誰かが私にそれが意味を成しているかどうか教えてくれるのだろうかと思っていましたか?または、これを行うよりよい方法を私にアドバイスしてください。"For"ループのPythonコード - これは正しく見えるかどうか?

obstacles = [obstacle, obstacle1, obstacle2] 
tests = [] 

counter = 0 

for obstacle in obstacles: 
    tests.append(0) 
    tests[counter] = obstacle_detection(obstacle, pos) 
    counter = counter + 1 
+0

他のforループを使用して配列の内容を出力することで、動作しているかどうかを簡単にテストできます。 –

+4

あなたはhttps://codereview.stackexchange.com/を見ましたか?この質問にはより適しているかもしれません。 –

+0

@JacobKrallああ、ありがとう、私はこれについて知りませんでした! –

答えて

2

あなたのコードは、おそらくあなたがobstaclesobstacle_detectionを定義する方法に応じて、理にかなっています。それがあるので、あなたがこのようにコードを書くことができ

tests = [obstacle_detection(obstacle, pos) for obstacle in obstacles] 

それは、obstacles、各obstacleについてobstacle_detection値で満たされたと同じ長さで、自動的に新しいリストを作成します。

関連する問題