Объект не имеет атрибута split () 'Python - PullRequest
0 голосов
/ 19 апреля 2020

Ошибка, когда я пытаюсь получить первую работу из строки, которая передается методу в классе. Но я получаю AttributeError: у объекта «Палуба» нет атрибута «split» при запуске. Передача 'new_card' будет, например, 'Two of Hearts'. и new_Card - это строка, а self.values ​​- это словарь

# returns integer value of a card
def get_card_value(self, new_card):
    return self.values[new_card.split()[0]]

и ошибка:

Traceback (последний вызов был последним): Файл "/ home / andypaling / Documents / Programming / python / random / card_game / game.py ", строка 146, если не Game.check_same_cards (player1_deck, player2_card): Файл" /home/andypaling/Documents/Programming/python/random/card_game/game.py ", строка 87 , в check_same_cards, если card1.get_card_value (card1) == card2.get_card_value (card2): Файл "/home/andypaling/Documents/Programming/python/random/card_game/game.py", строка 40, в get_card_value split_string = new_card. split ('')

спасибо за любую помощь

1 Ответ

1 голос
/ 19 апреля 2020

Эй, похоже, вы используете другой тип данных, а не строку в вашем случае, судя по тому, что вы делаете карточную игру, я предполагаю, что вы используете кортеж. Попробуйте преобразовать данные в строку, а затем разделить ее с помощью функции .split ().

Надеюсь, это поможет.

...