VSCode: Run Code не учитывает virtualenv - PullRequest
0 голосов
/ 24 февраля 2019

vscode : 1.31.1 расширение Python : 2019.1.0

Выбранный интерпретатор Python: (надлежащая среда pyenv), отображается в нижнем колонтитуле.

Однако, когда я открываю простой тестовый скрипт

from apps.business.periods import PeriodFactory
import sys


def init(config='config.settings.local'):
    import os
    import django

    os.environ.setdefault("DJANGO_SETTINGS_MODULE", config)
    django.setup()


init()

if __name__ == '__main__':

    from apps.business.metrics.data import get_metric
    from apps.business.metrics.widgets import get_widget

    period = PeriodFactory.current_month()
    print(period)
    print(sys.prefix)
    print(sys.executable)

и запускаю его (щелчок правой кнопкой мыши - Run Code ), я получаю ошибки:

[Running] python -u "/home/dmitry/Projects/analytics/backend/test.py"
Traceback (most recent call last):
  File "/home/dmitry/Projects/analytics/backend/test.py", line 1, in <module>
    from apps.business.periods import PeriodFactory
  File "/home/dmitry/Projects/analytics/backend/apps/business/periods.py", line 43
    range_entries: PeriodOrPeriodTupleList
                 ^
SyntaxError: invalid syntax

И если я удаляю импорт

import sys

if __name__ == '__main__':

    print(sys.prefix)
    print(sys.executable)

, я получаю следующий вывод

[Running] python -u "/home/dmitry/Projects/analytics/backend/test.py"
/usr
/usr/bin/python

Если я запускаю тот же скрипт из оболочки, все в порядке

(cam) 
➜ BACKEND_ENVIRONMENT=local python test.py
2019-02 (Feb)
/home/dmitry/.pyenv/versions/cam
/home/dmitry/.pyenv/versions/cam/bin/python
(cam) 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...