我有这样的dir结构:
Proj/
run.py
Util/
__init__.py
x.py
y.py
在x.py中,我定义了一个函数:
def p():
return 1
在y.py中,我定义:
def q():
return 2
目前在run.py中,我将使用
from Util import *
但我必须使用
打电话给他们x.p()
y.q()
但我想用
打电话给他们p()
q()
我有办法做到这一点吗?就像(我想象的那样)
from Util.* import *
答案 0 :(得分:0)
使用__init__.py
:
# in util/__init__.py
from util.x import *
from util.y import *
在每个子模块中,使用__all__
名称定义要导出的名称:
# in x.py
__all__ = ['p']
和
# in y.py
__all__ = ['q']
这是包中__init__.py
模块的标准用法,记录为here。