#python #visual-studio-code
#python #visual-studio-code
Вопрос:
У меня есть следующие настройки.json
{
"python.pythonPath": "C:\Users\james\OneDrive\Programming Projects\Python\webscraper\Scripts\python.exe",
"python.linting.enabled": true,
"python.linting.pylintEnabled": true,
"python.linting.pylintPath": "\Scripts\pylint.exe"
}
и следующая запись в launch.json:
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Python: Current File (Integrated Terminal)",
"type": "python",
"request": "launch",
"program": "${file}",
"console": "integratedTerminal"
}
]
}
Когда я перехожу к своему файлу, который я хочу отладить, и выбираю свой Python: Current File (Integrated Terminal)
отладчик, он выделяет мои точки останова серым цветом и показывает это:
Если, с другой стороны, я настроил новый интерпретатор, например:
"C:\Users\james\AppData\Local\Programs\Python\Python39-32\python.exe"
Он запустит отладчик, но в то же время он не учитывает мой venv и поэтому выдает ошибки об отсутствующих модулях (как и должно быть).
Вы знаете, где я могу ошибаться?
Комментарии:
1. ваша среда должна быть вложенным каталогом рабочей области, а не рабочей средой
2. Я не совсем уверен в действии. Вы имеете в виду, что мне нужно поместить все мои вещи в папку? Кстати, спасибо за ответ!
3. папка, которую вы открыли в VSC, — ЭТО среда, неправильно, это должна быть родительская папка среды
4. Должен ли я также иметь папку vscode в родительской папке?
5. ДА,
workspaceFolder/.vscode
Ответ №1:
Здесь следует упомянуть несколько вещей:
В среде не должно быть ваших файлов, предполагается, что это то, что вы используете и выбрасываете по прихоти. Разместите файлы проекта за пределами создаваемой вами среды. Я выложил свой в виде папки с именем «env», которую я создал с помощью:
py -m venv env
а затем, после того, как он был создан, я активировал его с помощью
env/Scripts/activate
Во-вторых, не забудьте убедиться, что ваша папка vscode находится в этой корневой папке, вот мои настройки для моей конфигурации, которые в итоге сработали.
Это казалось действительно важным:
"python.linting.pylintArgs": [
"--init-hook",
"import sys; sys.path.append('C:\Users\james\OneDrive\Programming Projects\Python')"
],
И на всякий случай было неясно, как теперь выглядит моя структура папок. папки main.py
, logic
, models
и services
— это мой собственный код. env
Папка — это среда, созданная с помощью venv
:
Просто дополнительный бонус, не забудьте создать requirements.txt в нем хранятся библиотеки, которые вы используете в своем проекте
Затем вы можете установить его с помощью:
py -m pip install -r requirements.txt