今天在網路上查到
想要讓class物件直接回傳東西,可以用__new__的方法來達成
不過使用了之後發現,在該class下面寫的函數都會失效
以下是範例程式(使用Python2):
class MyList(object):
def __new__(cls,input_list):
return input_list
def __init__(self,input_list):
self.input_list=input_list
def Sum(self):
return sum(self.input_list)
li=MyList([1,2,3])
print li # [1, 2, 3]
print li.Sum # AttributeError
請問該如何改寫才正確呢?
謝謝