确定两个值是否相等,而不使用比较运算符(==,< =,> =,<,>)

时间:2015-01-18 22:40:10

标签: python

所以我的任务是在Python中编写一个函数,它接受两个整数,并返回true或false,具体取决于数字是否相等。我不允许使用比较运算符。

我知道我应该对xor门做一些事情,因为当你xor两个相等的二进制数时,你得到全零。

1 0 1 0
1 0 1 0
-------
0 0 0 0

我不知道如何在python中解决这个问题。如果有人能给我一些提示,或指出我正确的方向,那就太棒了!

2 个答案:

答案 0 :(得分:3)

如果您对成为一名智者感兴趣:

def isEqual(num1, num2):
    a = {}
    a[num1] = 1
    try:
        a[num2]
        return True
    except KeyError:
        return False

答案 1 :(得分:2)

一些选项:

# Using xor:
not bool(a ^ b)

# Simple substraction:
not bool(a - b)