2016-07-05 196 views
0

我有一個名爲項目目錄設置是這樣的:名爲無模塊 '...' 蟒蛇

項目

--directory:src-- 
--directory:testscripts-- 
--directory:config_files-- 
RunPCS.py 

和src內,它被設置爲:

SRC

parse_files.py 
parse_json.py 
process_xml.py 
__init__.py 

在RunPCS.py我有from src.parse_files import parse_filesfrom src.parse_json import parse_json

在parse_json.py我有from process_xml import process_xml(因爲它們是在同一目錄)

,但我得到的錯誤no module named process_xml。有誰知道爲什麼這個錯誤出現?

+2

請具體說明哪些版本的Python - 相對導入規則不同。看,即。 https://docs.python.org/2.5/whatsnew/pep-328.html - 在2.5中引入顯式的相對導入語法(您可能應該在這裏使用它)。 –

+0

我正在使用python 3.4 –

回答

1

的import語句,使用

from .src.parse_files import parse_files 
from .src.parse_json import parse_json 

在parse_json.py

from .process_xml import process_xml 
+0

從3.4開始它還在未來嗎?我認爲這成爲3.0語言的一部分。 –

+0

好OP只有在我把我的答案放在後才評論它,所以不需要導入absolute_import –

+1

謝謝你的答案。然而,當我使用「從.src」它給出錯誤「'未加載,不能執行相對導入。當我從「.process_xml import process_xml」進行更改並使用src而不是.src時,它修復了問題 –