Не удается преобразовать NonType в строковую ошибку в Python - PullRequest
0 голосов
/ 21 апреля 2020

У меня есть небольшой фрагмент кода Python, который использует форматирование и не ведет себя должным образом.

Вот код:

TypeError: Can't convert 'NoneType' object to str implicitly

Как видите, я проверяю тип x и это число с плавающей точкой. Я не проверял y в этой версии, но я проверил, и это тоже поплавок. плавать так же.

Тем не менее, когда я печатаю их с форматированием, Python жалуется, что не может преобразовать NoneType в строку. И даже если я поместил str () вокруг каждого вызова формата, он все равно не увидит все объекты, переданные в print () как строки.

Разве форматирование не должно занимать два числа и доставлять (отформатированную) строку?

Ответы [ 2 ]

0 голосов
/ 21 апреля 2020

Вы неправильно поняли [Python 3.Docs]: встроенные функции - print (* объектов, sep = '', end = '\ n', file = sys.stdout, flush = False ) синтаксис. 2 nd один не должен быть там - так как print ничего не возвращает (или возвращает None ).

Вы хотели строка должна быть:

print("{:.4f}    {:.4f}".format(x, y))
0 голосов
/ 21 апреля 2020

Я думаю, что ваша ошибка может заключаться в том, что дополнительные print("{:.4f}").format(y)
Попробуйте заменить его на что-то вроде:
print("{:.4f}".format(x) + " " + "{:.4f}".format(y))

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