如何简化Python模块导入:将from web.web import改为from web import
简化web模块导入的方法
完全可以通过修改web目录下的__init__.py文件实现,步骤很简单:
打开
web/__init__.py,添加以下代码:from .web import *这样一来,当你在
main.py里执行from web import *时,就会自动导入web.py里的所有内容,不用再写from web.web import *。如果你还想把
web/utils.py里的内容也一并导入到web包的层级,也可以在__init__.py里再加一行:from .utils import *
原理很直白:Python里带__init__.py的目录会被识别为包,当你导入这个包时,Python会先执行__init__.py里的代码。把web.py的内容导入到__init__.py,就等于把这些内容直接暴露在web包的命名空间下,自然就能简化导入路径了。
不过要提一句:用import *虽然省事,但容易引发命名冲突,实际项目里更建议显式导入需要的具体成员,比如from web import my_function, MyClass,但如果就想保持from web import *的写法,上面的方法完全可行。
内容的提问来源于stack exchange,提问作者lycheejelly
相关产品推荐
相关产品推荐

