1

質問が示唆するように、私は一連のタプルを作成しようとしています:
[(1,1),(2,2),(3,3),(4,4),(5,5)...]
そして、これを行う最短の方法は何だろうと思っていますか?

4

4 に答える 4

3
from itertools import repeat
zip(*repeat(xrange(1, n_tuples), 2))

長所:

  • 高速:時間の 56% しかかかりません。リスト内包表記を含む式が必要です。IPython レポート: 10000 ループ、ベストオブ 3:ループあたり92.8 usn_tuples = 1000 、 (リスト内包表記: 10000 ループ、ベストオブ 3:ループあたり165 us )。(「最速の方法」を具体的に求められたため、これを強調しています)。
  • タプル内の同じ要素の数は簡単に変更できます ( を2目的の数に置き換えることにより)。
  • 短いです(少なくとも なしでimport)。
于 2013-05-27T18:39:43.193 に答える