круглые скобки в Python 3.7 красные, и я думаю, что он продолжает выдавать мне ошибку синтаксиса - PullRequest
0 голосов
/ 13 апреля 2019

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

 print(f"Hi {user_name}, Im the {script} script")
                                               ^
 SyntaxError: invalid syntax   

Я пытался найти его в Google, заменив скобки (методом проб и ошибок) и попробовав YouTube, подумал, что это будет работать лучше

from sys import argv

script, user_name=argv
prompt="> "

print(f"Hi {user_name}, im the {script} script")
print("Id like to ask you a few questions")
print(f"do you like me {user_name}?")
likes=input(prompt)

print(f"where do you live {user_name}?")
lives=input(prompt)

print("what kind of computer do you have?")
computer=input(prompt)

print(f"""
Alright, so you said {likes} about liking me.
You live in {lives}. Not sure where that is.
And you have a {computer} computer. Nice
""")

Ответы [ 2 ]

1 голос
/ 13 апреля 2019

Вы не получите эту синтаксическую ошибку на Python 3.7.Скорее всего, вы пытаетесь запустить скрипт, используя старую версию Python, у которой нет нового синтаксиса f-строки.

В macOS учтите, что по умолчанию команда python относится к Pythonверсия 2. Попробуйте запустить скрипт вместо python3.

Если вы просто наберете python в терминале, баннер перед подсказкой >>> точно скажет, какая это версия.То же самое с python3.

Обратите внимание, что для использования f-строк у вас должна быть как минимум версия 3.6.

0 голосов
/ 13 апреля 2019

Я думаю, что вы сталкиваетесь с ошибкой только при попытке ввести имя, превышающее слово. Поэтому я внес некоторые коррективы. Посмотрите, было ли это так:

from sys import argv

script = argv[0]
if len(argv) < 2:
    print("you must give me a name as commandline param to work with")
    exit(0)
user_name=' '.join(argv[1:])
prompt="> "

print(f"Hi {user_name}, im the {script} script")
print("Id like to ask you a few questions")
print(f"do you like me {user_name}?")
likes=input(prompt)

print(f"where do you live {user_name}?")
lives=input(prompt)

print("what kind of computer do you have?")
computer=input(prompt)

print(f"""
Alright, so you said {likes} about liking me.
You live in {lives}. Not sure where that is.
And you have a {computer} computer. Nice
""")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...