Why do I get "ImportError: No module named pdb"

Why do I get "ImportError: No module named pdb"

我正在 运行在 OS X 中安装一个 python virtualenv。

我已经在virtualenv 中使用pip 安装了pdb。

但是当我 运行 pdb 时,出现以下错误。

Traceback (most recent call last):
  File "/Users/myname/.virtualenvs/myenv/bin/pdb", line 9, in <module>
    load_entry_point('pdb==0.1', 'console_scripts', 'pdb')()
  File "/Users/myname/.virtualenvs/myenv/lib/python2.7/site-packages/pkg_resources.py", line 356, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/Users/myname/.virtualenvs/myenv/lib/python2.7/site-packages/pkg_resources.py", line 2431, in load_entry_point
    return ep.load()
  File "/Users/myname/.virtualenvs/myenv/lib/python2.7/site-packages/pkg_resources.py", line 2147, in load
    ['__name__'])
ImportError: No module named pdb

您希望在这里安装什么? Password database or the standard library debugger module?

stdlib 调试器不需要安装,但它没有自己的命令行界面。您 可以 python 命令行上使用 -m 开关指定模块以设置 post 即时调试;见 module documentation:

python -m pdb yourscript.py

我遇到了同样的问题:

ImportError: No module named pdb

并通过更改导入顺序修复了它。 在我的脚本中,顺序是:

import pdb
import os
import shutil

现在是

import os
import shutil
import pdb

现在可以使用了。