2

Pythonで複数のループを同時に実行することは可能ですか.

同様に(もちろん構文エラー):

for a,b in list_of_a,list_of_b:
      //do some thing

同時にとは、スレッドやプロセスの意味を意味するものではありません。

つまり、反復中に同じインデックスまたはカーソルを共有します。

それを達成するために私が考えることができるのは:

  1. int 変数を使用して共有カーソルとして機能させる
  2. それらをタプルのリストに入れて、タプルリストを繰り返します。しかし、リストを作成するのは面倒です

それを達成するための組み込み関数またはより単純な構文があるかどうか疑問に思っています。

4

2 に答える 2

9
for a,b in zip(list_of_a, list_of_b):
  # Do some thing

Python 2.x を使用している場合、パフォーマンスが心配な場合、および/またはリストの代わりに反復子を使用している場合は、itertools.izip代わりにzip.

Python 3.x では、;をzip置き換えます。リストを返す古い (2.x) 動作を取得するためにitertools.izip使用します。list(zip(..))zip

于 2011-09-02T12:04:39.483 に答える
2
import itertools
for a, b in itertools.izip(list_a, list_b):
    # ...
于 2011-09-02T12:04:38.050 に答える