在Python中比较某些对象的两个实例是否相同的最佳方法是什么?我希望能够做类似的事情
例:
class MyClass:
def __init__(self, foo, bar):
self.foo = foo
self.bar = bar
Run Code Online (Sandbox Code Playgroud)
编辑:
进一步澄清这个问题.我想通过属性值进行比较,并制作一个更通用的解决方案
x = MyClass('foo', 'bar')
y = MyClass('foo', 'bar')
Run Code Online (Sandbox Code Playgroud)
MyClass方法看起来应该是这样的吗?
>>> x == y
False
Run Code Online (Sandbox Code Playgroud) 如何检查是否有两个实例
class FooBar(object):
__init__(self, param):
self.param = param
self.param_2 = self.function_2(param)
self.param_3 = self.function_3()
Run Code Online (Sandbox Code Playgroud)
是一样的?相同的意思是他们在所有变量中都有相同的值.
a = FooBar(param)
b = FooBar(param)
Run Code Online (Sandbox Code Playgroud)
我想到了
if a == b:
print "a and b are identical"!
Run Code Online (Sandbox Code Playgroud)
这会没有副作用吗?
我的问题的背景是单元测试.我希望实现以下目标:
self.failUnlessEqual(self.my_object.a_function(), another_object)
Run Code Online (Sandbox Code Playgroud)