我正在尝试比较两个Cashflow
对象,这些对象只包含Series
作为单元测试的一部分。
在单元测试中,我有以下内容,其中cashflowobj_1
和cashflowobj_2
是包含Cashflow
的{{1}}对象:
Series
这两个系列看起来完全一样,但是测试返回self.assert_(cashflowobj_1==cashflowobj_2)
,所以我想知道我用来检查它们的相等性的函数是否存在问题。 Series are not equal
和cashflowobj_1.amounts
分别是cashflowobj_2.amounts
:
Series
:
cashflowobj_1.amounts
1983-05-15 1
1983-11-15 1
1984-05-15 1
1984-11-15 101
:
cashflowobj_2.amounts
用于检查 1983-05-15 1
1983-11-15 1
1984-05-15 1
1984-11-15 101
对象是否相等的函数,该函数位于Cashflow
类中:
Cashflow
编辑:解决@ matt的问题:索引都是def __eq__(self, other):
'''
Series being equal
'''
if ((len(self.amounts) == len(other.amounts))) and ((all(i in self.amounts for i in other.amounts))):
print('Series are equal')
return(1)
else:
print('Series are not equal')
return(0)
个对象。值为datetime.date()
。