首页 > 解决方案 > 有没有办法说“如果有什么==什么”?(Python)

问题描述

示例代码:

import random

x = random.randint(1, 101)
y = random.randint(1, 101)
z = random.randint(1, 101)

print(x, y, z)

现在有没有更简单的说法

while x == y or x == z or y == z:
    x = random.randint(1, 101)
    y = random.randint(1, 101)
    z = random.randint(1, 101)

因为你拥有的变量越多,while 语句的运行时间就越长,如果你忘记了某些东西,它就会变得越丑陋和令人沮丧。

类似的东西:如果任何变量等于任何其他变量:重新滚动。

谢谢!

标签: pythonrandomwhile-loop

解决方案


如果你有三个变量,你可以检查是否有任何一个等于另一个使用

len({x,y,z}) < 3

如果列表中有任意数量的变量values,则可以使用以下命令检查是否重复了任何值:

len(set(values)) < len(values)

推荐阅读