Скрипт больше не запускается после обновления до python 3.7.3

Просто вопрос для начинающих, я обновил python с 2.7.10 до python 3.7.3. Запустил несколько скриптов, но больше ничего не работает. Поэтому в базу введен этот код для проверки:

a=("hello world")
print(a)

и до сих пор получает ошибку

MacBook-Pro-van-Gijs-2:visual code studio Gijs$ print(a)bash: syntax error near unexpected token `a'

также со скриптами как:

name = input("Give me your name: ")
print("Your name is " + name)

Я получил:

MacBook-Pro-van-Gijs-2:visual code studio Gijs$ print("Your name is " + name)
bash: syntax error near unexpected token `"Your name is "'

Кто-нибудь может мне помочь? Это действительно расстраивает

1 ответ

Итак, здесь есть две (независимые?) Проблемы:

  • Python 2.x и 3.x не совместимы. Были изменения синтаксиса и библиотеки, что означает, что вы не можете запустить скрипт 2.x на 3.x или наоборот и ожидать, что он будет работать. Вы можете рассматривать оба языка как разные, но связанные языки. Для этого вам, как правило, никогда не следует удалять какую-либо версию Python, поставляемую с системой, и вместо этого устанавливать другие основные версии параллельно. Удаление существующих версий приводит к поломке системных скриптов (во многих дистрибутивах Linux).

    • Если вы не программист и хотите запускать только существующий скрипт, вам следует установить правильную версию Python для этого скрипта. Если это скрипт Python 2, оставайтесь в ветке Python 2.
  • Ваша ошибка исходит от bash, Это говорит о том, что вы работаете не с кодом на Python, а с Bash. Я бы посоветовал вам попробовать запустить команду python (или, может быть python3), чтобы получить приглашение Python и посмотреть, работает ли он первым. В зависимости от того, как вы установили Python, вполне возможно, что python только отображается на Python 2, и вам нужно более явное python3 Команда, чтобы получить 3.

    • После того, как вы выяснили, правильно ли установлен Python, вы можете посмотреть, почему конфигурация запуска кода Visual Studio может пытаться запустить неправильный интерпретатор, и настроить его для запуска правильного.
Другие вопросы по тегам