Я пытаюсь запустить код в коде Visual Studio, но продолжаю получать ошибку ModuleNotFoundError. Когда я запускаю код в своем терминале или в режиме отладки в VS с активированной средой conda, он работает нормально.
Система: Mac M1 12.3
Среда Conda, выбранная в Visual Studio Code.
я добавил это
import os
print('cwd is %s' %(os.getcwd()))
import sys
print('executable is %s' %(sys.executable))
print('path is %s' %(sys.path))
и запуск в терминале дает:
cwd is /Users/USERNAME/xyz/CodeFolder
executable is /Users/USERNAME/miniforge3/envs/conda_envNAME/bin/python
path is ['/Users/USERNAME/xyz/CodeFolder', '/Users/USERNAME/miniforge3/envs/conda_envNAME/lib/python38.zip', '/Users/USERNAME/miniforge3/envs/conda_envNAME/lib/python3.8', '/Users/USERNAME/miniforge3/envs/conda_envNAME/lib/python3.8/lib-dynload', '/Users/USERNAME/miniforge3/envs/conda_envNAME/lib/python3.8/site-packages']
запуск в VS через Запустить файл Python (кнопка в правом верхнем углу) дает:
cwd is /Users/USERNAME/xyz/CodeFolder
executable is /Users/USERNAME/miniforge3/bin/python
path is ['/Users/USERNAME/xyz/CodeFolder', '/Users/USERNAME/miniforge3/lib/python39.zip', '/Users/USERNAME/miniforge3/lib/python3.9', '/Users/USERNAME/miniforge3/lib/python3.9/lib-dynload', '/Users/USERNAME/miniforge3/lib/python3.9/site-packages']
запуск в VS через Отлаживать Файл Python (кнопка в правом верхнем углу) дает:
cwd is /Users/USERNAME/xyz/CodeFolder
executable is /Users/USERNAME/miniforge3/envs/conda_envNAME/bin/python
path is ['/Users/USERNAME/xyz/CodeFolder', '/Users/USERNAME/miniforge3/envs/conda_envNAME/lib/python38.zip', '/Users/USERNAME/miniforge3/envs/conda_envNAME/lib/python3.8', '/Users/USERNAME/miniforge3/envs/conda_envNAME/lib/python3.8/lib-dynload', '/Users/USERNAME/miniforge3/envs/conda_envNAME/lib/python3.8/site-packages']
Я в замешательстве - как я могу запустить это в VS Code?
---- Обновление от 23 марта 2022 г.:
Когда я добавляю
"code-runner.executorMap": {
"python": "$pythonPath -u $fullFileName"
}
к
settings.json
(см. [https://www.wiseowl.co.uk/blog/s2930/module-not-found-error.htm] 2 от @Kyouya Sato)
и запускаю Выполнить код, он работает, и я также получаю
cwd is /Users/USERNAME/xyz/CodeFolder
executable is /Users/USERNAME/miniforge3/envs/conda_envNAME/bin/python
path is ['/Users/USERNAME/xyz/CodeFolder', '/Users/USERNAME/miniforge3/envs/conda_envNAME/lib/python38.zip', '/Users/USERNAME/miniforge3/envs/conda_envNAME/lib/python3.8', '/Users/USERNAME/miniforge3/envs/conda_envNAME/lib/python3.8/lib-dynload', '/Users/USERNAME/miniforge3/envs/conda_envNAME/lib/python3.8/site-packages']
без изменения
settings.json
он также не работает с использованием Выполнить код.
Запустить файл Python вообще не работает.
Спасибо, я вручную редактировал имена и получил ошибку копирования - я редактировал исходный пост.
вы имеете в виду, когда используете код бегун? если ваш ответ да, проверьте это: https://www.wiseowl.co.uk/blog/s2930/module-not-found-error.htm
Спасибо, похоже, бегун кода исправлен. Но вариант по умолчанию (см. отредактированный пост) по-прежнему не работает.
Обходной путь:
conda run
).Причина:
У Conda есть некоторые проблемы:
@StefanOverFlow Вы решили проблему?
да - '"python.terminal.activateEnvironment": false' в 'settings.json' сделал свое дело! Спасибо!
sys.path
должен ли нет иметь то же значение, что иsys.executable
. Вы что-то сделали, чтобы изменить значение?