Почему в коде macOS Visual Studio используется неправильный интерпретатор Python? - PullRequest
0 голосов
/ 11 апреля 2019

Я использую VS Code 1.33.1 на macOS Sierra (10.12.6).Когда я запускаю простую программу на Python, подобную следующей, VS Code использует Python 2.7, установленный на моем Mac, а не Python 3, который я установил с помощью Homebrew.

    # show-python-version.py
    import sys
    print(sys.version)

Вот вывод, отображаемый в выводе кода VSwindow:

    [Running] python -u "/Users/smith/Documents/Programming/Python/Examples/show-python-version.py" 
    2.7.15 (default, May  1 2018, 16:44:37) 
    [GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.39.2)]

    [Done] exited with code=0 in 0.032 seconds

Как вы видите, я получаю версию 2.7.15, потому что она вызывает "python" вместо "python3", но я не знаю, как заставить его использовать python3.Вот все, что я сделал, чтобы попытаться решить эту проблему:

  1. Я гарантирую, что ни одна из моих виртуальных сред, использующих Python 2.7, не запущена, когда я выдаю «код»«.Команда в каталоге примеров.

  2. Я установил Python 3 с помощью Homebrew, поэтому открыл командную палитру (shift + cmd + p), набрал «Python: Select Interpreter» и подтвердил, чтоон использует мою версию Homebrew: current: /usr/local/bin/python3.

  3. Я проверил настройки VS Code, искал «python.pythonPath» и подтвердил, что он совпадает сПуть интерпретатора, показанный в шаге 2 выше.

  4. Я также исследовал файл examples / .vscode / settings.json, чтобы также подтвердить путь интерпретатора:

    {
            "python.pythonPath": "/usr/local/bin/python3"
    }
    
  5. Я перезапустил VS Code безрезультатно.

У меня установлены следующие расширения:

esbenp.prettier-vscode@1.8.1
formulahendry.code-runner@0.9.8
fosshaas.fontsize-shortcuts@1.5.0
ms-python.python@2019.3.6558
tht13.python@0.2.3
vmsynkov.colonize@2.2.2
vscodevim.vim@1.4.0

Возможно, это связано с моим путемэто выглядит следующим образом, так как python3 и python3 находятся в / usr / local / bin:

    $ echo $PATH
    /usr/local/bin:/usr/bin:/bin:/usr/sbin:....

Что я делаю не так?

1 Ответ

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

Это из-за расширения бегуна кода, добавьте "code-runner.executorMap.python": "python3 -u" в ваш файл settings.json, и это должно изменить версию Python, когда он запускает код на python3 вместо python2

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