f-строки, дающие SyntaxError: неверный синтаксис? - PullRequest
0 голосов
/ 14 июня 2019

Я пытаюсь изучить Python и получаю сообщение об ошибке синтаксиса в Sublime Text при попытке запустить этот код F-строки

Код:

 # print welcome message
 greeting = 'Hello'
 name = 'Michael'
 message = f'{greeting}, {name}. Welcome!'

 print(message)

Ошибка:

SyntaxError: invalid syntax
[Finished in 0.1s with exit code 1]
[shell_cmd: python -u "/Users/stevie/Desktop/intro.py"]
[dir: /Users/stevie/Desktop]

Ответы [ 2 ]

0 голосов
/ 21 июня 2019

У меня возникает та же проблема, хотя я использую Python 3.7.3

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

Но похоже, что SublimeText не может работать с f-строками, даже если он вводится как правильная команда при вводе.«Неверный синтаксис» выдает только при запуске (с помощью Tools -> Build).

Очевидно, новичок сам.Я продолжу некоторые исследования, но хотел бы указать, как это работает правильно из командной строки.Примеры моего опыта ниже.Заранее спасибо за любой ввод.

Это мой (кашель, кашель) ... код.

greeting = 'Hello'
name = 'Vato'

# message = greeting + ", " + name + "! Welcome.
# message = "{}, {}! Welcome.".format(greeting, name)                  
# f"{'Eric Idle'}"

message = f'{greeting}, {name}! Welcome.'

print('')
print(message)
print('')

Это неприятности, которые я получаю от переводчика с помощью SublimeText (Tools--> Build).

  File "/Users/AAvalos/PythonArea/Intro.py", line 9
    message = f'{greeting}, {name}! Welcome.'
                                            ^
SyntaxError: invalid syntax
[Finished in 0.1s with exit code 1]
[shell_cmd: python -u "/Users/AAvalos/PythonArea/Intro.py"]
[dir: /Users/AAvalos/PythonArea]
[path: /Library/Frameworks/Python.framework/Versions/3.7/bin:/Users/AAvalos/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public]

Но работает из командной строки очень хорошо.

~/ 03:31:16$
~/ 03:31:37$
~/ 03:31:37$python PythonArea/Intro.py 

Hello, Vato! Welcome.

~/ 03:31:38$
~/ 03:31:39$
0 голосов
/ 16 июня 2019
greeting = 'Hello'
name = 'Michael'
message = f'{greeting} {name} !'
print(message)

// Это будет хорошо работать //

...