Объясните файл launch.json для vscode и отладку в Python.Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Объясните файл launch.json для vscode и отладку в Python.

Сообщение Anonymous »

С тех пор я боролся с файлом launch.json в vscode. Каждый раз с новым проектом (структурой) я не понимаю, почему он не работает так, как я хочу.
Может кто-нибудь в общих чертах объяснить, как это сделать? Значение обязательных аргументов и то, как это работает.
В качестве примера я хотел бы привести следующую структуру:

Код: Выделить всё

workpace
|   .vscode
│   ├── launch.json
│   └── settings.json
└── tree
├── branch1
├── leaf1
└── leaf2
├── pyhelp.py
└── pytest.py
Может быть, это усложняет задачу, но предположим, что я хочу отладить pytest.
Итак, когда переходим в Leaf2 и запускаем

Код: Выделить всё

pytest pytest.py
из терминала все работает нормально.
Работает

Код: Выделить всё

~/workspace/tree/branch1/leaf2$ python /pytest.py
не работает. (ModuleNotFoundError: нет модуля с именем «leaf2.pyhelp»)
Открытие pytest.py в VS Code и использование отладчика тоже не приводит к этому. Первая ошибка выдает

Произошло исключение: ModuleNotFoundError


Нет модуля с именем «leaf2.pyhelp»

В рамках скрипта я делаю:

Код: Выделить всё

from leaf2.pyhelp import something
Я решил, что проблема с дополнительным импортом (leaf2.pyhelp).

Код: Выделить всё

from test import *
работает.
Мой файл launch.json менялся туда и обратно. Я сильно изменился, даже не имея ни малейшего понятия... видимо. Еще вот структура:

Код: Выделить всё

{
"version": "0.2.0",
"configurations": [
{
"name": "Python: Current File",
"type": "debugpy",
"request": "launch",
"program": "${file}",
"console": "integratedTerminal",
"justMyCode": false,
"cwd": "${workspaceFolder}/tree/branch1/"
}
Я использую поэтическую среду, которая не хранится в репозитории.
На самом деле я действительно не знаю, в чем проблема. Не уверен, что это файл launch.json или это как-то связано с другой обработкой pytest.
Что происходит, когда я вызываю «python script.py» в терминале, и что меняется при запуске кода с помощью pytest script.py? При печати sys.path они, кажется, проверяют одни и те же каталоги...
Любая помощь будет очень признательна!

Подробнее здесь: https://stackoverflow.com/questions/786 ... -in-python
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»