__init__.py
的文档很难找到。我找不到一个地方来解释您可以在此文件中执行的所有操作。Python 模块文档甚至几乎没有提到__init__.py
,也不能将__all__
用于from module import *
我想要的是我的模块是可调用的,如下所示:
main.py
import module
module()
module/__ init __.py
def __call__(self): # self here cause modules are loaded as objects?
print 'callable'
也许是愚蠢的答案,但您可以将方法添加到__init__.py
文件中,例如
__init__.py
def module():
# what functions do you need to run into __init__ file
然后
main.py
from module import module
module()
此外,您只需将一些操作写入 init,然后在导入后调用
例:
__init__.py
print('1')
print('2')
print('3')
main.py
import module
运行 main.py 后输出将是
1
2
3
但实际上,这不是好的做法。尝试在不"调用"模块的情况下编写代码,因为模块是包含 Python 定义和语句的文件,而不是需要调用的函数。