class Junk(object):

    def __ne__(self, other):
        return False

def __eq__(self, other):
    return False
j = Junk()
print(not j == 1)
print(j != 1)
Is there a significant difference between: if not a == 'bar' and if a != 'bar'?