2014-07-21 50 views
0

我已經在PyDev的Eclipse中像這樣同一目錄的兩個.py文件:Python的導入需要的模塊名稱

DemoProject 
| 
+---- __init__.py 
| 
+---- demo_functions.py 
| 
+---- demo_runner.py 

在demo_runner.py文件,我試圖用進口demo_functions

import demo_functions 

但PyDev將此標記爲導入問題。它喜歡

import DemoProject.demo_functions 

雖然。儘管PyDev不喜歡,該項目仍在運行。任何想法PyDev有什麼問題?

+0

嘗試:'from demo_functions import *' – heinst

+2

聽起來像是真正的問題是'DemoProject'目錄和'DemoProject'本身都在你的模塊路徑上。 (你可以通過在腳本的頂部添加一個'print(sys.path)'來檢查它)。如果你這樣做了,那麼'demo_functions'和'DemoProject.demo_functions'最終會成爲兩個不同的模塊,任何全球性的國家,你幾乎可以保證在以後遇到混亂的問題。如果這是你的問題,你需要修復它(永遠不要讓包出現在'sys.path'上),這可能是你在PyDev中的項目配置的問題。 – abarnert

+0

從sys.path中刪除項目文件夾修復了它。謝謝! – jahmezz

回答

1

的問題是,你應該加入「DemoProject」在PyDev的源文件夾(這是被添加到PYTHONPATH的文件夾),而不是在PYTHONPATH讓項目基本目錄。

你可以改變你的項目配置(在PyDev的包管理器中選擇項目> ALT + ENTER>的PyDev - PYTHONPATH)

作爲一個說明,你可能不希望__init__.py在這一水平(自這是您的頂級而不是套餐)。

相關問題