странное поведение в python if clause [duplicate]
На этот вопрос уже есть ответ здесь:
Почему в этой строке всегда максимально возможное число [дубликат] 6 ответовЯ написал простую небольшую игру «камень, ножницы, бумага» на python, и у меня возникли трудности с предложением if, вот соответствующий код:
def play():
user = str(input("rock, paper or scissors? Choose one: "))
print("You chose", user)
if user == "paper" or "Paper":
paper()
elif user == "rock" or "Rock":
rock()
elif user == "scissors" or "Scissors":
scissors()
else:
print("Sorry, your choice was not valid, try again please.")
play()
Теперь, независимо от того, выбрал ли я камень, бумагу или ножницы, это всегда вызывало бы первое условие, приводя меня к функции бумаги. Я на самом деле уже решил ее, это было второе условие, которое я поставил в предложениях if, «Бумага», «Камень» и «Ножницы», которые я поставил там для заглавных букв первой буквы. Мой вопрос: почему второе условие вызвало первое условие if? Когда я удалил все вторые струны, он работал отлично, камень вызвал второе состояние, ножницы - третье и так далее. Я надеюсь, что это не слишком запутанно. Благодарю.