如何更新SPE的插件Python编辑器

问题描述:

SPE的winpdb默认版本是v.1.3.4,它有与Python 2.7一起工作的问题。如何更新SPE的插件Python编辑器

这是我做了升级的版本winpdb到v.1.4.8

步骤1>重命名

C:\ Program Files文件\ SPE-0.8.4.c- wx2.6.1.0-no_setup_spe \插件\ winpdb

C:\ PROGRAM 文件\ SPE-0.8.4.cw x2.6.1.0-no_setup_spe \插件\ winpdb_v.1.3.4

步骤2>下载winpdb v.1.4.8和文件夹复制为

C:\ Program Files文件\ SPE -0.8.4.c -wx2.6.1.0-no_setup_spe \ plugins \ winpdb

步骤3>直接加载winpdb v.1.4.8没有问题。

C:\ Python27 \ python.exe “C:\ PROGRAM 文件\ SPE-0.8.4.c - wx2.6.1.0-no_setup_spe \插件\ winpdb \ winpdb.py”

步骤4>通过SPE 0.8.4.c启动winpdb与下面的错误

Python 2.7.2 (default, Jun 12 2011, 15:08:59) [MSC v.1500 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information. 
>>> Traceback (most recent call last): File "C:\Program Files\SPE-0.8.4.c-wx2.6.1.0-no_setup\_spe\sm\wxp\NotebookCtrl.py", line 2722, in OnMouseMotion 
    insidetab = self.GetInsideTab(pt) File "C:\Program Files\SPE-0.8.4.c-wx2.6.1.0-no_setup\_spe\sm\wxp\NotebookCtrl.py", line 2468, in GetInsideTab 
    for tabs in self._tabrect: AttributeError: 'TabCtrl' object has no attribute '_tabrect' Traceback (most recent call last): File "C:\Program Files\SPE-0.8.4.c-wx2.6.1.0-no_setup\_spe\dialogs\winpdbDialog.py", line 144, in onDebug 
    from plugins.winpdb import __file__ as fileName File "C:\Program Files\SPE-0.8.4.c-wx2.6.1.0-no_setup\_spe\plugins\winpdb\rpdb2.py", line 13488, in rpdb2_import_wrapper 
    m = g_import(*args, **kwargs) ImportError: No module named winpdb 

我做下面的事情不解决问题

1>添加路径

C:\ Documents和Settings \大柳>设置PYTHONPATH PYTHONPATH = C:\ Program Files文件\ SPE-0.8.4.c-wx2.6.1.0-no_setup_spe \插件\ winpdb

2>添加代码

import sys 
sys.path.append(r'C:\Program Files\SPE-0.8.4.c-wx2.6.1.0-no_setup\_spe\plugins\winpdb') 

到rpdb2.py和winpdbDialog.py

问题1>为什么SPE可以找到老winpdb版本winpdb模块?

问题2>如何解决这个问题?

谢谢

+1

1.4.8在win7中完美工作7 64位python 2.6,只是改变旧的和新的文件夹。 SPE是0.8.4.i(您没有最后一次SPE转换)。 – joaquin

我跟着你的程序,我winpdb的工作。

但仔细观察后,我意识到正在运行的rpdb2实体不是spe/plugins/winpdb,而是我的站点包中的另一个安装。

也许你的问题与此有关。在您的程序中,您忘记了将__init__.py文件包含在winpdb模块中。它不在winpdb zip分发文件中,需要将该文件夹转换为包含可导入模块的包。你有更多关于软件包和模块搜索的信息herehere

因此,只需将旧文件__init__.py复制粘贴到新文件夹(无论如何都是空文件)。

+0

嗨华金,非常感谢你的时间,我非常感谢你的帮助。可否给我一些参考资料,以便我能更好地了解何时以及为什么需要这种__init__.py。 -thx – q0987

+1

@ q0987你可以看看[python docs](http://docs.python.org/tutorial/modules.html) – joaquin

我只需要从第一篇文章中的步骤1和2,然后从下一篇文章中复制__init__.py,这对我来说是独一无二的。

因此,在总结:

  • 查找原始的SPE安装windb插件,并reanme或将其放在安全的地方,因为我们以后需要从中获得__init__.py文件。
  • 下载winpdb v.1.4.8并将其放在原来的位置(在插件文件夹中) 将____init____.py从原始文件复制到新文件夹中。重新启动特别版,并尝试调试,这让它为我工作。