Фрагмент кода в проекте python не будет выполняться должным образом

#python

#питон

Вопрос:

В моем школьном проекте python есть небольшой раздел, который работает не так, как я намереваюсь:

 elif "eat berry" in command:  if inventory == 'berry':  typingPrint("You eat a berry")  Penguin.health = Penguin.health   10  print("Your health is now", Penguin.health)  userInput()  else:  typingPrint("sorry you can't eat that right now.")  userInput()  

когда я запускаю этот код, даже если у меня есть ягода в инвентаре (инвентарь создается в виде списка), он все равно печатает «Извините, вы не можете съесть это прямо сейчас». Есть идеи, как это исправить? Заранее спасибо.

Комментарии:

1.Является ли значение inventory буквально равным строке 'berry' или inventory должно содержать эту строку? inventory == 'berry' проверяет на равенство.

Ответ №1:

Вам следует использовать in оператора, так как ["berry"] != "berry"

 if "berry" in inventory:  

Ответ №2:

Поскольку ваш инвентарь представляет собой список, вам необходимо изменить это
if inventory == 'berry': в
if 'berry' in inventory :

Ответ №3:

Если инвентарь имеет тип list , то вам следует проверить, есть ли соответствующий товар в "berry" списке inventory :

 if "berry" in inventory:  # do something