質問が示唆するように、私は一連のタプルを作成しようとしています:
[(1,1),(2,2),(3,3),(4,4),(5,5)...]
そして、これを行う最短の方法は何だろうと思っていますか?
1317 次
4 に答える
3
from itertools import repeat
zip(*repeat(xrange(1, n_tuples), 2))
長所:
- 高速:時間の 56% しかかかりません。リスト内包表記を含む式が必要です。IPython レポート: 10000 ループ、ベストオブ 3:ループあたり92.8 us
n_tuples = 1000
、 (リスト内包表記: 10000 ループ、ベストオブ 3:ループあたり165 us )。(「最速の方法」を具体的に求められたため、これを強調しています)。 - タプル内の同じ要素の数は簡単に変更できます ( を
2
目的の数に置き換えることにより)。 - 短いです(少なくとも なしで
import
)。
于 2013-05-27T18:39:43.193 に答える