Вопрос
Есть ли у кого-нибудь понятное новичку объяснение, почему я получаю SyntaxError, когда я вызываю .get()
из f-строки в Python> 3.8?
Проблема
Когда я вызываю dict.get()
непосредственно в f-строке, я получаю SyntaxError. Если я храню вызов dict.get()
в переменной и ссылаюсь на переменную в строке f, он работает без ошибок.
Это работает
def new_item():
desc = request.form.get('description', 'No description found')
return f'Your new item to insert\nDescription:{desc}'
http://127.0.0.1: 5000 / new_item отображает:
Это не работает
def new_item():
return f'Your new item to insert\nDescription:{request.form.get('description', 'No description found')}'
SyntaxError: неверный синтаксис
File ".\server.py", line 39
return f'Your new item to insert\nDescription:{request.form.get('description', 'No description found')}'
^
Мои исследования
StackOverflow изобилует вопросами ( здесь , здесь , здесь , здесь ) и / или проблемы, которые были решены простым вызовом адекватной Python версии. У меня установлена такая версия Python, и я также вызываю соответствующую команду (на самом деле f-строка работает в приведенном выше примере). В любом случае, вот что такое PowerShell:
> python
Python 3.8.1 (tags/v3.8.1:1b293b6, Dec 18 2019, 23:11:46) [MSC v.1916 64 bit (AMD64)] on win32