首页 > 解决方案 > 从三个选项中检查两个变量是否相等

问题描述

我有三个整数,我需要检查其中两个是否相等。我的代码很丑:

a = 5
b = 7
c = 5
if a == b or b == c or a == b:
    pass

我想知道这种比较是否有更好的选择。

标签: python

解决方案


您可以构建 aset并检查结果长度:

a = 5
b = 7
c = 5

if len({a,b,c}) < 3:
    pass

由于您在实际情况中提到变量是列表,因此您可以将它们转换为tuples可散列的,因此可以从它们构建一个集合。因此,您可以这样做:

a = [5, 2]
b = [7, 2]
c = [5, 2]

if len(set(map(tuple, [a,b,c]))) < 3:
    pass

推荐阅读