2016-08-23 250 views
-2

我有兩個文件夾的每個包含多個python模塊:的Python導入模塊失敗__init__.py

 
1. pyA: 

/a 
/b 
/c 

2. pyB: 

/d 
/e 
/f 

我已經添加了__init__.py(空)這兩個文件夾。 但是,當我嘗試在pyA中導入pyB時,出現「ImportError:No module named pyB」。

我已經查看了現有的答案並找不到解決方案。任何建議非常感謝。

+0

是'了',' b','c','d','e'和'f'目錄全部在同一目錄中? – FamousJameous

+0

不,a,b,c是文件,並且在文件夾pyA和d中,e,f在pyB中。我已經將sys.path.insert(0,os.path.abspath(「..」))添加到我的文件中,並在其中執行導入並且工作。但是,然後我應該添加此行到任何文件,我有從其他文件夾中導入? – Brunisboy

回答

0

直到除非pyB的根文件夾在PYTHONPATH中,否則這是預期的。 pyA文件夾內的文件不知道pyB在哪裏。

(OR)請在下面:

import sys 

sys.path.append(/path/to/parentfolderofPyB) 
import pyB 

或者,如果你確信你不PYB使用PYA,你可以移動PYB PYA文件夾內

+0

我應該在哪裏添加?對每一個文件? – Brunisboy

+0

將這兩行添加到PyA中的所有py模塊,你需要pyB import –

+0

那麼使用python包呢?它似乎應該有一些更好的解決方案。 – Brunisboy