シーケンスですべての双方向比較を行うための最もPython的な方法は何ですか?
私がこれまでに試したこと:
[compare(i, j) for i in sequence for j in sequence]
最悪。n / 2(n-1)の比較の代わりにn^2を実行します。また、アイテムをそれ自体と比較します。
l = []
for i in xrange(1,len(sequence)):
for j in xrange(i-1):
l.append(compare(sequence[i], sequence[j]))
ぶさいくな。
[compare(i, j) for i, j in permuations(sequence, 2)]
これはそれかもしれませんが、それがPythonicであるかどうかはわかりません。