2017-04-10 99 views
0

我的項目目錄:在我的項目Python3.5導入錯誤

project 
├── folder1 
├── folder2 
└── src 
    | 
    ├──__init__.py 
    | 
    ├── mod1 
    | ├──__init__.py 
    | ├──file_a.py 
    | └──file_b.py 
    | 
    └── mod2 
     ├──__init__.py 
     └──file_c.py 

的第一個問題是:

在我Linux服務器(Ubuntu的14.04與python3.5)

file_a.py:

import file_b 
# that's work 
.... 

file_b.py:

from src.mod2 import file_c 
# get No module named 'src' 
# Or: 
from ..mod2 import file_c 
# get Parent module '' not loaded, cannot perform relative import 

請注意,我用運行中得到這些錯誤

python3 file_a.py 

第二個問題是:

在我的MacOS與Pycharm CE,我必須有

file_a.py:

from src.mod1 import file_b 
... 

如果我直接用import file_b,我會得到ImportError

我不知道這有什麼錯我的項目做。

希望你的幫助,謝謝!

+0

爲什麼不導入與file_b相同的方式? 'from src.mod1 import file_a' – ymmx

+0

感謝您的評論:)但我不需要在我的file_b中使用file_a,我的目的是在file_b中使用file_c – onefolder

+0

也許您應該爲file_c添加路徑? 進口SYS sys.path.append從src.mod2進口FILE_C 或類似的東西(os.path.abspath則(os.path.dirname(__ FILE__)+ '/' +」 ../mod2' )) 那? – ymmx

回答

0

你試過了嗎?

from src.mod2.file_c import name_of_your_module_in_file_c 
+0

我試過了,得到了同樣的錯誤:( – onefolder

相關問題