有没有一种简单快捷的方法来使用非整数值的 sum()?
Is there a simple and quick way to use sum() with non-integer values?
所以我可以这样使用它:
So I can use it like this:
class Foo(object):
def __init__(self,bar)
self.bar=bar
mylist=[Foo(3),Foo(34),Foo(63),200]
result=sum(mylist) # result should be 300
我尝试覆盖 __add__ 和 __int__ 等,但我还没有找到解决方案
I tried overriding __add__ and __int__ etc, but I don't have found a solution yet
解决办法是实现:
def __radd__(self, other):
return other + self.bar
正如威尔在他的帖子中所建议的那样.但一如既往,条条大路通罗马,但我认为这是最好的解决方案,因为我的课堂不需要 __add__
as Will suggested in his post. But as always, all roads lead to Rome, but I think this is the best solution since I don't need __add__ in my class
这有点棘手 - sum() 函数获取开始并将其添加到下一个等等
Its a bit tricky - the sum() function takes the start and adds it to the next and so on
你需要实现 __radd__ 方法:
class T:
def __init__(self,x):
self.x = x
def __radd__(self, other):
return other + self.x
test = (T(1),T(2),T(3),200)
print sum(test)
这篇关于python 的 sum() 和非整数值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!
列表字典中的总和值Sum values in a dict of lists(列表字典中的总和值)
如何在 Python 中对文本文件中的数字求和How to sum numbers from a text file in Python(如何在 Python 中对文本文件中的数字求和)
什么是类似于 sum() 的减法函数,用于减去列表中What is a subtraction function that is similar to sum() for subtracting items in list?(什么是类似于 sum() 的减法函数,用于减去列表中的
Python 等价于 sum() 使用 xor()Python equivalent of sum() using xor()(Python 等价于 sum() 使用 xor())
python中的求和矩阵列sum matrix columns in python(python中的求和矩阵列)
N个列表元素的总和pythonsum of N lists element-wise python(N个列表元素的总和python)