Использование %debug в записных книжках VSCode/JupyterPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Использование %debug в записных книжках VSCode/Jupyter

Сообщение Anonymous »

Я могу найти много подобных вопросов, но после нескольких поисков так и не смог найти, как использовать %debug в VSCode.
Что я могу сделать:
  • Щелкните правой кнопкой мыши по ячейке и запустите ее в режиме отладки.
Что я не могу сделать:

[*]Использовать волшебную команду %debug для загрузки трассировки стека.
< /ul>
Это можно сделать в браузерной версии Jupyter и ipython. Это может быть очень полезно для отладки чего-либо в реальном времени в конвейере.
Вот текстовый пример того, как эта функция работает в ipython.

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

In [1]: example = [1, 2, None, 3]

In [2]: for num in example:
...:     print(num + 1)
...:
2
3
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
Cell In[2], line 2
1 for num in example:
----> 2     print(num + 1)

TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'

In [3]: %debug
> (2)()
1 for num in example:
----> 2     print(num + 1)
3

ipdb> print(num)
None
Здесь я могу использовать команды отладчика (хотя в этом надуманном примере нет ничего, от чего можно было бы повышать или понижать уровень!). Чтобы показать, что это работает в версии для браузера:
Изображение

Для VSCode предлагается повторно запустить проблемную ячейку, но щелкнуть правой кнопкой мыши и запустить в режиме отладки. Для приложений, в которых мы загружаем достаточное количество данных, это обременительно, так как нам, возможно, придется снова ждать загрузки или выполнять какое-то хрупкое кэширование, чтобы определить, какая проблема с форматированием имеет поле, которое не соответствует контракту с код. Если мы сможем углубиться в уже имеющуюся трассировку стека, это будет намного быстрее.
Вопрос: как включить %debug для блокнота Jupyter внутри Visual Studio Code , чтобы я мог запустить отладчик с самой последней трассировкой стека вместо перезапуска ячейки в отладчике?

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

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

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

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

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

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

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