在SO中存在许多问题,这个问题略有不同.我见过的答案都没有解决我的问题,所以我问了一个新问题.
我有这个文件夹结构:
/myapp/
\__init__.py
modu1.py
modu2.py
__init__.py 是空的
modu1.py
class TestMod1Class():
def msg(self):
print "Hello World!"
Run Code Online (Sandbox Code Playgroud)
modu2.py
import myapp.modu1
obj = myapp.modu1.TestMod1Class()
obj.msg()
Run Code Online (Sandbox Code Playgroud)
如果从目录/ myapp /我运行python modu2.py我得到:
Traceback (most recent call last):
File "modu2.py", line 1, in <module>
import myapp.modu1
ImportError: No module named myapp.modu1
Run Code Online (Sandbox Code Playgroud)
我做错了什么?我已经阅读了文档,但仍然无法理解这一点.
您已经在该myapp模块中,位于该模块中myapp.因此,您不需要使用import myapp.modu1语法,而应该使用import modu1.
例如:
import modu1
obj = modu1.TestMod1Class()
obj.msg() # output: Hello World!
Run Code Online (Sandbox Code Playgroud)
注意:我在Python 3中测试过,因为我的机器上没有2,但它应该是相同的(我编辑modu1以使用新print语法).
| 归档时间: |
|
| 查看次数: |
972 次 |
| 最近记录: |