1
我已經用Eclipse在Python中編寫了一個小腳本,並且它在從Eclipse執行時運行。從命令行執行python腳本:導入時出錯
>python test.py argument1 argument2
from src import Tests, ImportError: No module named src
腳本存儲與下列文件夾:
ScriptFolder
.input
.report
.src
..test.py
..Tests
...Test1.py
...Test2.py
..TestUtils
...FileUtils.py
這是我做的test.py進口的方式:不過,這並不在命令行工作
from src import Tests
from TestUtils import FileUtils
關於初始化 .py文件中,一個與test.py爲空共享文件夾,以及一個到測試文件夾中有這樣的內容:
import Test1
import Test2
而且初始化 .py文件到TestUtils有這樣的內容:
import FileUtils
的問題是,如果我改變行from src import Tests
只是import Tests
我在Eclipse中收到錯誤:Unresolved imports: Tests. found at src.Tests
我該如何使它適用於Eclipse和命令行?
我不明白爲什麼我需要將__init__.py文件放入根文件夾。無論如何,我也導入TestConstants.py,它是根文件夾,並工作。我從TestUtils中導入FileUtils.py,並運行。但是不可能導入測試。爲什麼python知道在哪裏查找這些文件而不是測試文件?我怎樣才能使用sys.path.append調用?我想絕對路徑不會是一個好的實踐,所以我怎樣才能以相對的方式使用它? – 2013-02-25 08:57:34
「我不明白爲什麼我需要'__init __。py'」......「爲什麼Python知道在哪裏查找這些文件而不是測試文件」第二個問題是第一個問題的答案。 – 2013-02-25 09:07:57
@DanielRoseman但我明白它的目的是進入Tests文件夾,將每個py文件導入到該文件夾中,這樣你就可以導入所有文件,只需導入'測試'。但我不明白它的目的爲根文件。事實上,如果我編輯root的__init__.py文件並寫入導入測試,問題仍然存在 – 2013-02-25 09:15:56