1. ホーム
  2. python

[解決済み] コードからipythonに入ることは可能ですか?

2023-06-14 07:47:36

質問

デバッグのために pdb はかなり良いです。しかし、それは だいぶ に入ることができれば、よりクール(かつ有用)です。 ipython . このことは可能ですか?

どのように解決するのですか?

このような場合 ipdb プロジェクトがあり、iPythonを標準のpdbに埋め込んでいますので、それを実行すればよいのです。

import ipdb; ipdb.set_trace()

インストールは通常の pip install ipdb .

ipdb はかなり短いので、easy_installing の代わりに、ファイル ipdb.py というファイルをPythonのパスのどこかに作成し、そのファイルに以下を貼り付けます。

import sys
from IPython.Debugger import Pdb
from IPython.Shell import IPShell
from IPython import ipapi

shell = IPShell(argv=[''])

def set_trace():
    ip = ipapi.get()
    def_colors = ip.options.colors
    Pdb(def_colors).set_trace(sys._getframe().f_back)