我想從應用程序特定的終端(在這種情況下,瑪雅人,但最終其他人)導入模塊。我下載了一個項目關閉混帳,我有一個結構,像這樣:模塊導入本身
modulename
submodule
__init.py__
subsubmodule
...
submodule
...
__init.py__
modulename.py
在我執行殼
於是,我試圖導入到外殼上使用的模塊,所以我必須:
import sys,os
modulepath = 'C:/path/to/module'
sys.path.append(modulepath)
import modulename
如果導入的modulename.py是空白的,一切都很好。 模塊的前兩行,然而,該模塊試圖導入本身(我真的不知道爲什麼,看到這是別人的項目,但它似乎是結構很重要)
import sys,os
import modulename from modulename as mod
這得到了錯誤:
# Error: ImportError: cannot import name modulename#
,並沒有別的可以繼續進行。
最終我想知道爲什麼一個模塊不能導入自己,和/或如何解決這個問題?
我已閱讀,模塊認爲它自己被命名主要使相對進口不工作,在這種情況下,我希望
import __main__ as mod
來代替它,也沒有工作不,錯誤:
# Error: ImportError: Cannot re-init internal module __main__ #
這是總的意義。
[現在的問題是,我怎麼能導入模塊從內部本身?]
你嘗試'從MODULENAME進口MODULENAME爲mod'? –
是的,與第一個錯誤相同的ImportError。 –