解决 python 模块导入时在调用函数时省略模块名的难题
在 python 中,通过 from 模块 import * 的方式导入模块时,可以在调用模块下的函数时省略模块名。但是当自定义模块时,不能直接使用这种方式。该如何解决呢?
解决方案
想要在调用自定义模块下的函数时省略模块名,需要在模块的 init__.py 文件中定义 all 变量。__all 变量是一个列表,其中包含了希望通过 from 模块 import * 方式导入的模块成员的名称。
立即学习“Python免费学习笔记(深入)”;
示例代码
以下是一个示例代码,演示如何使用 all 变量解决此问题:
# ana/__init__.pyfrom .api import *__all__ = ['api', 'get_data'] # 将 get_data 添加到 __all__ 中# ana/api.pydef get_data(): print("ok")
登录后复制
使用示例
导入模块后,可以直接调用 get_data() 函数,而无需添加 ana 模块名。
from ana import *get_data() # 输出 "ok"
登录后复制
注: 如果你不定义 all 变量,也可以不使用 from 模块 import * 的方式导入模块,而是直接导入需要的函数。例如:
from ana.api import get_dataget_data() # 输出 "ok"
登录后复制
以上就是Python模块导入:如何避免在调用函数时添加模块名前缀?的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2177559.html