Как вы убедитесь, что пользователь вводит правильный тип (список в моем случае) при создании объектаPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как вы убедитесь, что пользователь вводит правильный тип (список в моем случае) при создании объекта

Сообщение Anonymous »

Я пытаюсь проверить входные данные, когда создается новый объект класса, чтобы определить, правильно ли они вводятся, и, скажем, «Themoves» вводится неправильно, сделайте что -то вроде игнорирования его или попытки преобразовать его в список. < /p>

Код: Выделить всё

class Card:
def __init__(self, theName, theHP, theMoves):
self.theName = str(theName)
self.theHp = int(theHP)
self.theMoves = theMoves  # [(), (), ...]

class Deck:
# more code here

def main():
#c0 = Card("Dave", 454, [("Fieball", 999)])  # works
c1 = Card("Bob", 500, [("Fireball", 999), ("Flame", 999), ("Waterblast", 499)])  # works
#c2 = Card("Peter", 400, (fire, 342))  # fix
#c3 = Card("Josh", 300, waterb, 22)  # fix (maybe by just ignoring the moves after checking each variable)
< /code>
Когда я пытаюсь добавить карту в колоду, я получаю ошибку индекса, потому что в классе карты не верны. Он работает с c0 
, c1 .
Мне интересно, есть ли способ, чтобы кто -то не вводил информацию, как я сделал в C2 // Затем он должен либо преобразовать значения, чтобы соответствовать формату, как в C0 или c1 , либо просто игнорировать значение все вместе. Когда я посмотрел в Интернете, я увидел, что кто -то упомянул метод __new __ , но я не слишком уверен, как бы я его использовал.

Подробнее здесь: https://stackoverflow.com/questions/657 ... y-case-whe
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»