我有一个类,它接受一个数组并计算一个答案。班级如下:
class Delish:
ing = []
rmax = []
rmin = []
lmax = []
lmin = []
answer = 0
def rightmax(self):
# sets rmax
def rightmin(self):
# sets rmin
def leftmax(self):
# sets lmax
def leftmin(self):
# sets lmin
def calculate(self):
#calulates answer
def __init__(self,array):
self.ing = list(array)
self.rightmax()
self.rightmin()
self.leftmax()
self.leftmin()
self.calculate()
现在这给出了输出 4 13 (这是正确的)
b = Delish([1,1,-1,-1])
a = Delish([1,2,3,4,5])
print a.answer,b.answer
这给出了输出 7 13 (这是错误的)
a = Delish([1,2,3,4,5])
b = Delish([1,1,-1,-1])
print a.answer,b.answer
我不能放完整的代码,因为它是现场编程竞赛的一部分。但我想知道是什么导致了这种奇怪的行为。所有的方法都对自己起作用。仅变量。因此,所有对象都应该相互独立,对吗?
如果它没有提供太多算法,我可以添加细节。谢谢你。