Как сделать так, чтобы команды conda соответствовали поведению встроенного терминала Vscode и обычного терминала? - PullRequest
0 голосов
/ 27 апреля 2020

Я был отложен, потому что conda info --envs НЕ отображает то же, что и мой терминал. Terminal:

(automl) brandBrandoParetoopareto~/anaconda3/envs $ conda info --envs
# conda environments:
#
base                     /Users/brandBrandoParetoopareto/anaconda3
automl                *  /Users/brandBrandoParetoopareto/anaconda3/envs/automl
coqgym                   /Users/brandBrandoParetoopareto/anaconda3/envs/coqgym

vscode интегрированный вывод терминала:

(automl) brandBrandoParetoopareto~/ultimate-utils $ conda info --envs
# conda environments:
#
                         /Users/brandBrandoParetoopareto/anaconda3
base                  *  /Users/brandBrandoParetoopareto/anaconda3/envs/automl
                         /Users/brandBrandoParetoopareto/anaconda3/envs/coqgym

это действительно странно, потому что кажется, что он использует правильный env, которого я не знал бы, потому что в окне отладчика это не показывает (automl), но говорит (base), но указывает на правильный env (На самом деле предыдущий вывод команды, если вы внимательно ее читаете, говорит, что он использует (automl), но затем он на самом деле использует base, но, похоже, он указывает на правильная среда!?!? Но неправильные имена).

Кажется, что странное поведение кто-нибудь знает, как это исправить, или если оно вызывает другие неожиданные проблемы?

Возможно, это должно быть опубликовано в vscode проблемы, но я не мог выяснить, какой из них, поскольку есть vscode и vscode- python один тоже.


Связанные проблемы:

  • Первоначально я видел эту проблему Отладка кода в Conda и Visual Studio , потому что я думал, поскольку он указывает на базу (или, по крайней мере, отображает неправильные имена), что он не распознал Изучите или узнайте, где был мой путь к conda, чтобы вопрос казался полезным, но в итоге я не решил проблемы с именами.
  • Изначально я также подумал, что это могло быть связано с проблемой инициализации conda, у меня было ровно 30 дней в go но это не было связано к несчастью Почему conda init неправильно обновляет мой .bash_profile?

За запрос комментария, чтобы проверить inheritEnv:

enter image description here

флажок снят, что, я полагаю, означает, что "terminal.integrated.inheritEnv" установлено на false

Ответы [ 2 ]

1 голос
/ 08 мая 2020

Я бы порекомендовал просто установить VS Code для использования обычно используемой оболочки: Как изменить встроенный терминал в коде Visual Studio или VSCode

0 голосов
/ 09 мая 2020

Вы установили python среду в VScode? Если не указано явно, он выбирает первый python, который он может найти в соответствии с алгоритмом поиска python.

В строке состояния всегда отображается текущий интерпретатор.

Image showing interpreter in status bar, next to warning and error icons

Чтобы выбрать определенную среду c, используйте команду Python: Выбрать переводчика из палитры команд (Ctrl + Shift + P). annotated screenshot of found environments

Этот переводчик будет сохранен в настройках рабочего пространства:

При выборе переводчика из списка добавляется запись для python .pythonPath с путем к интерпретатору в настройках вашего рабочего пространства. Поскольку путь является частью настроек рабочего пространства, при каждом открытии этого рабочего пространства уже следует выбирать ту же среду. Если вы хотите настроить интерпретатор по умолчанию для своих приложений, вы можете вместо этого добавить запись для python .pythonPath вручную в свои настройки пользователя. Для этого откройте командную палитру (Ctrl + Shift + P) и введите «Настройки»: откройте «Настройки пользователя». Затем установите python .pythonPath, который находится в разделе расширения Python пользовательских настроек, с соответствующим интерпретатором.

Предупреждения:

Среды Conda могут ' t автоматически активируется в VS Code Integrated Terminal, если для оболочки по умолчанию установлен PowerShell. Чтобы изменить оболочку, см. Интегрированный терминал - Конфигурация.

Будет использоваться среда Conda в вашем проекте, но только если среда conda содержит интерпретатор python, установив python= при создании окружение conda:

conda create -n env-01 python=3.4

Для получения дополнительной информации обратитесь к разделу окружения python документации VSCode. https://code.visualstudio.com/docs/python/environments

...