我创建了自己的文件名为mymodule.py
的模块。该文件包含:
def testmod():
print "test module success"
我已将此文件放在/Library/Python/2.7/site-packages/mymodule/mymodule.py
我还添加了一个__init__.py
文件,这些文件已经编译生成
__init__.pyc
和mymodule.pyc
然后在python控制台中我导入它
import mymodule
工作正常
当我尝试使用mymodule.testmod()时出现以下错误:
AttributeError: 'module' object has no attribute 'testmod'
所以是的,它似乎没有任何功能?
答案 0 :(得分:7)
您有包 mymodule
,其中包含模块 mymodule
。该功能是模块的一部分,而不是包。
导入模块:
import mymodule.mymodule
并参考该函数:
mymodule.mymodule.testmod()
您可以使用from ... import
和import ... as
来影响完全导入的内容:
from mymodule import mymodule
mymodule.testmod()
或
from mymodule import mymodule as nestedmodule
nestedmodule.testmod
或
from mymodule.mymodule import testmod
testmod()
等