How can I get a 3.4 version of pdb?
我倾向于使用与Python2.6、2.7和3.2一起提供的Debian喘息系统。
不过,我现在正在使用本地安装的python 3.4进行开发,因为它比python3.2有一个非常有趣的优势。
问题是我不知道如何安装pdb3.4这样的东西。当我在python 3.4程序上运行pdb3时,它作为python3.2程序运行,失败了。
我需要关于版本和多主机(Ubuntu precise and trusty,and debian wheezy)多版本开发的一般python建议,我特别需要下载和构建一个3.4版本的pdb,但我没有找到任何相关的文档。
每个版本的python都有自己的pdb模块。它是标准库的一部分。
与3.2或2.7版本相比,3.4标准库中的版本没有任何特殊优势。上次更改pdb功能是在3.2和2.7版本中(2.6版本中唯一缺少的是skip关键字参数到pdb.Pdb(),3.3增加了更多的标签完成支持)。
如果您有一个pdb命令行,那么这只是python3 -m pdb的别名;您可以将其用于任何版本:
1
| python3.2 -m pdb yourscript.py |
debian和ubuntu只需将pdb模块复制到/usr/bin/中,并附加python版本,所以/usr/lib/python3.2/pdb.py被复制到/usr/bin/pdb3.2中。
- 实际上,我已经看到这个用法是写在某个地方的,但是我被找不到任何pdb3.4二进制或脚本弄糊涂了。你回答我,但我现在盯着/usr/lib/python2.7/pdb.py和/usr/lib/python3.2/pdb.py,我的pdb和pdb3的两个解析端点,看到的不仅仅是用‘-m pdb’包装一个脚本。我想知道其他用户可能需要一些额外的内容来观看您回答我。
- 模块的其余部分在我链接到的python文档中有足够的文档记录。
- 如果您有一个pdb命令行,那么这只是python3 -m pdb的别名,这句话就不正确。但也许在你的特定系统中是真的。
- @Galegosimpatico:Debian将整个pdb库复制到/usr/bin/pdb库。运行python -m pdb与将库作为脚本运行完全相同。python模块既可以作为脚本使用,也可以作为命令行上的-m modulename使用,pdb两者都可以。
- @galegosimptico:该模块在文件底部有一个__main__测试,该测试处理作为脚本或使用python -m pdb运行的情况。如果您使用diff -u /usr/bin/pdb3.4 /usr/lib/python3.4/pdb.py,您将看到文件没有区别。
- 好吧,我现在明白了。