多个值的If语句

2024-10-04 01:29:22 发布

您现在位置:Python中文网/ 问答频道 /正文

这是我在一个例子中的目的。太好了!在

exampleNumbers = [One,Uno,Two,Dos]
randomNumber = random.choice(exampleNumbers)

从这里开始,如果exampleNumbers的随机选择是OneUno,我希望它将randomNumber更改为1,如果{}的随机选择是TwoDos。在

我想我可以用if语句来实现,但是我不确定如何使用具有多个值的if语句。在

所以基本上,如果随机选择是2例如,我希望它使randomNumber=2。在

抱歉,如果我没有很好地解释这一点,我正在慢慢地到达那里,但我的知识和术语仍处于业余状态。我会很高兴地勾选出任何好的答案!在

提前谢谢!:)


Tags: 目的if状态random语句one例子uno
3条回答

您可以使用andor来复合语句。对于多个语句,也可以使用括号(即:(True and False) or (False or True))。确实存在一个基本上从左到右的操作顺序。所以对于你的问题你可以做

if(num == "two" or num == "dos"):
    //do things
elif (num == "one" or num == "uno"):
    //do other things

您还可以定义选项:

options = { One : thisIsOne,
              Uno : thisIsOne,
              Two : thisIsTwo,
              Dos : thisIsTwo,
}

def thisIsOne()
  randomNumber = 1

def thisIsTwo()
  randomNumber = 2

然后您可以简单地调用options[randomNumber]()

我对我的python有点生疏,但我很确定这是可行的(但是rodrigo之前的回答也是如此!偏好和可重用性问题)

您可以使用运算符in

if randomNumber in (One,Uno):
    randomNumber = 1
else:
    randomNumber = 2

或者经典的or布尔运算符:

^{pr2}$

in非常适合检查大量值。在

or和其他布尔运算符and和{}可以用来构建任意复杂的逻辑表达式。在

相关问题 更多 >