2011-11-15 38 views
1

我跑的PyDev 2.2.3集錦3.0PyDev的:在同一目錄

錯誤自動完成導入路徑下面的示例項目類似於我當前的工作項目:

\project-dir 
      \lib 
      \main 

在LIB我的讀者。包含基類Reader(對象)的py和包含RSSReader(Reader)的rssreader.py。

我期望的PyDev,運行修復/進口訂單時添加一行rssreader.py說

from reader import Reader 

,而不是它的autogenerating

from lib.reader import Reader 

任何想法?

回答

0

它與你的Pydev項目中如何配置你的PYTHONPATH有關。

如果看起來像你的PYTHONPATH只包含項目目錄所以Pydev的AUTOIMPORT以絕對方式,所以它使from lib.reader import Reader

如果你想有from reader import Reader,你必須在你的PYTHONPATH把項目目錄/ lib目錄(優先項目-DIR /目錄之前)。

+0

這是所需的行爲,而不是在2 .py's駐留在同一目錄時查看相對路徑? –

+0

@SjaakTrekhaak:通常最好在python中使用絕對導入而不是相對的導入(事實上,這正是PyDev所選擇的)。在python中,可以使用'from .reader import Reader'使用相對導入(如[PEP328](http://www.python.org/dev/peps/pep-0328/)所述) –