2015-04-03 90 views
1

我有具有以下層次Python項目:無法導入Python模塊的Python腳本

- product_recommender_sys 
    - data 
    - dataset.csv 
    - public 
    - __init__.py 
    - startup.py 
    - src 
    - __init__.py 
    - recommender.py 

我試圖導入recommender.py模塊中startup.py。 以下是代碼:

import sys 
sys.path.insert(0, '/home/user1/product_recommender_sys/src') 
print sys.path 
from product_recommender_sys.src import recommender 
recommender.recommend() 

我已經包括__init__.py文件,並添加相應的文件夾sys.path。此外,同樣的import語句在Python解釋器上工作得很好,但在腳本內部失敗。我怎樣才能讓腳本中的導入工作?

+0

請問您可以更好地格式化樹,它會使事情變得更容易。 – 2015-04-03 18:09:10

+0

如果你使用'sys.path.insert(0,'/ home/user1/product_recommender_sys')'因爲這是模塊的根文件夾。 – 2015-04-03 18:12:21

+0

@PaulRooney,我也試過根文件夾。沒有任何區別.Throws相同的錯誤「ImportError:沒有名爲product_recommender_sys.src的模塊」 – user4460175 2015-04-03 18:24:21

回答

0

我發現了這個問題。 startup.py模塊由於沒有被導入而沒有被編譯。

首先編譯腳本解決了這個問題。

python -m compileall product_recommender_sys/public/startup.py