2014-03-13 97 views
1

我在從python中的其他文件導入東西時遇到問題。我有一個像這樣的設置:python import with __init__.py not working for unknown reasons

program/ 
    file1.py 
    file2.py 
    common/ 
     __init__.py 
     file3.py 

在文件1和2中的位置我說import common。但由於某些原因,導入失敗,稱no module named common。更奇怪的是,用它自己的__init__.py創建一個不同名稱的新文件,它導入完美。

完整的背景是我正在另一臺計算機上處​​理這些文件,然後通過電子郵件將它們發送給我自己,並將它們裝回到我的實際計算機上。這是發生導入錯誤的時候。我所做的重新加載文件是我簡單地刪除舊文件(包括文件結構),並用我通過電子郵件發送給我自己的文件重新構建它。這可能會對進口產生影響嗎?

編輯:我剛剛意識到,當我下載文件時,我實際上有兩個__init__.py的,一個用普通名稱,另一個用1結尾(區分差異)。我重命名了文件,因此它只是__init__.py,但我根本無法導入。即使我將該文件移動到新文件夾,它也會導致導入錯誤。我怎樣才能解決這個問題?

+0

程序的入口點是什麼,即如何調用python(例如'python program/file.py')? – metatoaster

+0

''C:\\ Users \\ USER \\ Documents \\ python programs \\ program \\ file1.py'' – user3002473

回答

0

你應該能夠做一些事情,如:

from common import file3, file4 
0

沒關係,事實證明我所要做的就是改變原來__init__.py的名稱,請從頭開始一個新的__init__.py,複製了所有的代碼,然後刪除原始的__init__.py。不知道究竟是什麼導致它像它那樣失敗,但至少我現在有一個解決方案。