Ошибка EOF при использовании f-строки в функции __repr __ () - PullRequest
0 голосов
/ 28 ноября 2018

Я работаю в Python 3.x и пытаюсь получить f-строку для отчета из функции __repr__, но я не могу получить следующую отформатированную строку для работы так, как яЯ ожидаю этого.

Я постоянно получаю сообщение «SyntaxError: неожиданный EOF при синтаксическом анализе»

def __repr__(self):
    return f"Player has {'Soft' if self.soft > 0} {self.count}. Cards are {self.cards}."

Часть, которая выдает ошибку, является {'Soft', если self.soft> 0}.И если неясно, я пытаюсь включить слово "Soft" IFF self.soft> 0, если нет, не добавляйте слово в строку.

1 Ответ

0 голосов
/ 28 ноября 2018

В отличие от оператора if, ключевое слово else в условном выражении не является обязательным:

def __repr__(self):
    return f"Player has {'Soft' if self.soft > 0 else ''} {self.count}. Cards are {self.cards}."
...