sum(iterable)
効果的に:
def sum(iterable):
s = 0
for x in iterable:
s = s.__add__(x)
return s
Pythonには、初期値を設定せずにこれを実現する組み込み関数がありますか?
# add is interchangeable with sub, mul, etc.
def chain_add(iterable):
iterator = iter(iterable)
s = next(iterator)
while True:
try:
s = s.__add__(next(iterator))
except StopIteration:
return s
私が抱えている問題は、演算子sum
をサポートする他のタイプでは機能しないことです。+
Counter