【问题标题】:ImportError: No module named 'ipdb'ImportError:没有名为“ipdb”的模块
【发布时间】:2016-04-20 15:17:05
【问题描述】:

我是 python 新手,我正在尝试使用标准 python 包中的交互式 python 调试器。每当我在我的文本编辑器(atom)中或通过 iPython 在命令行中运行“import ipdb”时,我都会收到错误消息: ImportError: 没有名为“ipdb”的模块

我的 ipdb 模块在哪里?重装python后还是不见了。

谢谢!

【问题讨论】:

    标签: python ipdb


    【解决方案1】:

    在特定情况下,您想要一个功能更强大的ipdb 调试器(包括自动完成之类的东西),ipython 也有一个内置的(据我所知,它实际上是ipython 默认使用的那个) )。具体来说,您可以改为运行

    from IPython.terminal.debugger import TerminalPdb
    ipdb = TerminalPdb()
    

    并获得与来自@Scott H 的answer 的命令相同的功能,但现在您可以在出现的调试器中获得自动完成功能!

    【讨论】:

      【解决方案2】:

      如果您使用--user 参数安装。您可以在~/.local/bin 中查看可执行文件名称。它可能被命名为ipdb3

      $ ipdb
      -bash: ipdb: command not found
      
      $ ipdb3
      usage: python -m ipdb [-c command] ... pyfile [arg] ...
      
      Debug the Python program given by pyfile.
      

      【讨论】:

        【解决方案3】:

        ipdb 附带ipython,因此如果您已经安装了ipython,您可以使用以下命令通过该软件包访问它:

        from IPython.core.debugger import Pdb
        ipdb = Pdb()
        

        那么你就可以像使用import ipdb一样使用ipdb了,比如:

        ipdb.runcall(self, func, *args, **kwds)
        ipdb.run(self, cmd, globals=None, locals=None)
        # etc.
        

        如果您没有安装ipython,那么您可以使用内置调试器pdb。主要区别在于ipdb 有一些额外的花里胡哨。

        【讨论】:

          【解决方案4】:

          pdb 是内置的。 ipdb 你必须安装。

          pip install ipdb
          

          【讨论】:

          • 为我工作!谢谢维姆!!
          猜你喜欢
          • 2013-03-11
          • 2012-12-07
          • 2012-05-23
          • 2019-07-29
          • 2015-07-04
          • 2014-03-15
          • 2017-12-29
          • 2014-09-12
          • 2017-05-09
          相关资源
          最近更新 更多