12

私は Python の sum 関数が好きです:

>>> z = [1] * 11
>>> zsum = sum(z)
>>> zsum == 11
True

追加 (+) ではなく xor (^) を使用した場合と同じ機能が必要です。地図を使いたい。しかし、これを行う方法がわかりません。ヒントはありますか?

私はこれに満足していません:

def xor(l):
    r = 0
    for v in l: r ^= v
    return v

地図を使ったワンライナーが欲しい。ヒント?

4

2 に答える 2

23
zxor = reduce(lambda a, b: a ^ b, z, 0)

import operator
zxor = reduce(operator.xor, z, 0)
于 2013-01-28T13:24:46.327 に答える