如何从包内的模块之一调用函数而不提及模块名称?

问题描述 投票:0回答:1

是否有正确的方法可以在

callMe()
内的
mycalls.py
中使用函数
/mypack
而不提及其模块名称(
mycalls
)?

而不是:

import mypack.mycalls
mypack.mycalls.callMe()

我想要这样的东西:

import mypack
mypack.callMe()

我知道可以通过

__init__.py
使用 import all 来完成,但这是一个好的做法吗?

from .mycalls import *
python module package namespaces
1个回答
0
投票

虽然,我不太确定为什么这会有所帮助,或者在哪些用例中这可能是有益的,但如果您坚持将

mypack.mycalls.*
称为
mypack.*
,您可以简单地执行以下操作:

import mypack.mycalls as mypack

然后你可以做:

mypack.callMe()
© www.soinside.com 2019 - 2024. All rights reserved.