2012-02-04 55 views
0

首先,我很新,所以我希望我没有错过任何微不足道的东西。基于Eclipse的IDE中的Python导入错误 - 现有模块

下面是一个有很多信息的小序: 我使用Windows & Python 2.7。 我一直在使用一个名为pybrain的开源模块,为了我自己的目的,我需要改变它。到目前为止,我一直在直接从python site-packages文件夹中进行更改,但我认为这是一种非常混乱的工作方式,所以我决定尝试重新做一件事,以便从不同的文件夹启动它。 我也决定开始使用Aptana(就我所能收集的基于Eclipse的应用而言,足够用于相同的解决方案),而不是使用迄今为止使用的更复杂但更简单的“Spyder”。

Pybrain是有很多不同的子文件夹,例如一个漂亮的分层模块: pybrain - > subfolder1 - > subfolder2 ...

到目前为止,我已经想通了这些: - 我已经从aptana项目中的PYTHONPATH中删除了site-packages中pybrain文件夹的路径。 - 我已将路径添加到新项目文件夹。

这适用于某些导入,即仅在子文件夹内引用相对路径的导入,例如,如果我在主文件夹中编写模块,我可以从子文件夹1中的东西导入。 但是,每当我尝试从其他子文件夹导入东西时 - 我无法在层次结构中使用“pybrain”:来自pybrain.subfolder2的 导入* 在子文件夹1中不起作用。

这里是我的问题: 如何在代码中将“pybrain”配置为可用的名称,就像在我的站点包文件夹中有pybrain一样?

回答

0

我想你已经添加了错误的路径源文件夹...

即:

如果你有一个结构

/project 
/project/pybrain 
/project/pybrain/__init__.py 

源文件夹设置为“/项目'(而我认为你已经设置/项目/ pybrain作为源文件夹)...如果不是这种情况,请在你的文件夹中添加更多信息,并将你设置为源文件夹的内容...

+0

谢谢,我改变了我访问原始软件包的方式来解决我遇到的问题。 – user1189509 2012-02-13 12:23:16

+0

如果这对您有效,请将答案标记为“已接受”。 – 2012-02-14 13:15:20

0

很可能Aptana有一些方法来配置被认为是源包的文件夹列表,如pycharm和eclipse-pydev。

在任何情况下,您都可以使用站点包中的.pth文件访问您的模块。这个文件可以根据需要命名(p.e. pybrain.pth),并且应该只包含一行到pybrain文件夹的路径。见thisthis

+0

Actuall我之前已经将它作为源包,而.pth的想法并没有解决我的问题... – user1189509 2012-02-04 19:13:27

+0

pth文件应该可以工作。你是将它应用到原始的pybrain文件夹还是修改后的文件夹? *在修改之前先尝试使用原始的*。 pybrain安装时会自动生成一个pth文件吗? – joaquin 2012-02-05 05:52:55