Pergunta

Aqui é o meu objetivo em um exemplo.Se você pudesse me ajudar a concluir que seria ótimo!

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

A partir de agora, quero-a para, em seguida, alterar randomNumber 1 se a seleção aleatória de exampleNumbersé Um ou Uno ou alterar randomNumber 2 se a seleção aleatória de exampleNumbers é Dois ou Dos.

Eu acho que pode fazê-lo utilizando uma instrução se, no entanto, eu não tenho certeza sobre como usar uma instrução if com vários valores.

Então, basicamente, se a seleção aleatória é Dois por exemplo, eu quero que ele, em seguida, fazer randomNumber = 2.

Desculpe se eu não explicou isso muito bem, eu estou lentamente chegando lá, mas o meu conhecimento e terminologia ainda é um amador do estado.Eu vou feliz de escala e votar qualquer grande respostas!

Obrigado antecipadamente!:)

Foi útil?

Solução

Você pode usar o operador in:

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

Ou o clássico or operador booleano:

if randomNumber == One or randomNumber == Uno:
    randomNumber = 1
else:
    randomNumber = 2

O in é ótimo para verificar uma série de valores.

O or, com os outros operadores booleanos and e not pode ser usado para construir arbitrariamente complexas expressões lógicas.

Outras dicas

você pode usar and e or para o composto de instruções.e para várias demonstrações você também pode usar parênteses (ie: (True and False) or (False or True)).Existe uma ordem de operações, que é, basicamente, da esquerda para a direita.Então, para você a pergunta que você pode fazer

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

Você pode também definir opções:

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

def thisIsOne()
  randomNumber = 1

def thisIsTwo()
  randomNumber = 2

Em seguida, você pode simplesmente chamar options[randomNumber]()

Eu estou um pouco enferrujado com a minha python, mas tenho certeza de que funciona (mas, não, a resposta anterior pelo rodrigo!questão de preferência e a reutilização)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top