Add __ne__ built-in function

In Python 3 __ne__ by default delegates to __eq__ and inverts the
result, but in Python 2 they urge you to define __ne__ when you
define __eq__ for it to work properly [1].There are no implied
relationships among the comparison operators. The truth of x==y
does not imply that x!=y is false. Accordingly, when defining
__eq__(), one should also define __ne__() so that the operators
will behave as expected.
[1]https://docs.python.org/2/reference/datamodel.html#object.__ne__

Change-Id: I5485022f010cdcb88c0d4ebe5c44a39a1bf242b0
This commit is contained in:
yuyafei 2016-07-05 14:57:55 +08:00
parent 07c960d46f
commit f4f2e6c261

View File

@ -494,6 +494,9 @@ class CaptureOutput(object):
def __eq__(self, other):
return self.out == other
def __ne__(self, other):
return not self.__eq__(other)
def __getattr__(self, name):
return getattr(self.out, name)