[英]Python - How can you use a module's alias to import its submodules?
我有一个很长的模块名称,我想避免在我的文档中多次输入它。 我可以简单地import long_ass_module_name as lamn
并以此方式调用它。 但是,此模块有许多子模块,我希望导入和使用它们。
在这种情况下,我将无法编写import lamn.sub_module_1
因为python import无法识别我为long_ass_module_name创建的别名。 我怎样才能做到这一点?
我应该只是自动导入主模块的__init__.py
所有子模块吗?
导入子模块时,别名对象仍会更改,
import my_long_module_name as mlmn
import my_long_module_name.submodule
mlmn.submodule.function()
import
语句始终采用模块的全名。 该模块只是一个对象,导入子模块将为该对象添加一个属性。
这种(非常不可推荐的)将对象的所有成员导入当前命名空间的方法通过查找vars()
字典来工作:
import my_bad_ass_long_module.bafd as b
# get __dict__ of current namespace
myn = vars()
for k,v in vars(b).items():
# populate this namespace with the all the members of the b namespace (overwriting!)
myn[k] = v
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.