Как проверить, есть ли значение из записи в списке? - PullRequest
0 голосов
/ 18 февраля 2020

Я пытаюсь создать калькулятор урона покемонов / симулятор битвы в python. Имея умеренный опыт работы с языком, я знаю большую часть jibe, однако я не могу понять, как извлечь запись (выбор пользователя Pokemon) и проверить, есть ли она в списке. Я буду использовать эту функцию для фрагмента скрипта, и я не уверен, как его кодировать.

Я пробовал оператор if в сочетании с .get, но когда я это пытаюсь, появляется ошибка TypeError: 'set' object is not callable.

Вот мой код, чтобы показать мою ситуацию:

from tkinter import *

Pokemon = {"Bulbasaur", "Ivysaur", "Venusaur", "Charmander",
"Charmeleon", "Charizard", "Squirtle", "Wartortle", "Blastoise",
"Caterpie", "Metapod", "Butterfree", "Weedle", "Kakuna", "Beedrill",
"Pidgey", "Pidgeotto", "Pidgeot"}

def begin():
    global battle
    if pokemon1.get() in Pokemon and pokemon2.get() in Pokemon():
      battle = Tk()
      battle.title("Battle")

root = Tk()
root.title("Select Pokemon")
root.geometry("600x400")

Label(root, text="Pokemon 1").pack()
pokemon1 = Entry(root)
pokemon1.pack()

Label(root, text="Pokemon 2").pack()
pokemon2 = Entry(root)
pokemon2.pack()

Button(root, text="Begin!", command=begin).pack()

root.mainloop()

Это немного коренасто, но это не так много (я сократил размер списка) , Если бы я мог получить ответ, который поможет мне исправить эту ошибку, я был бы признателен. Спасибо!

1 Ответ

2 голосов
/ 18 февраля 2020

Вот так

test = "Bulbasaur"
if test in Pokemon:
    print("Found")

Это самый простой способ найти что-то в списке / наборе

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...