python - Python:模块的延迟导入
问题描述
我之前研究了模块的延迟导入,并发现了这种方法:
def some_funk():
lazy_module = __import__("lazy_module")
lazy_obj = lazy_module.LazyClass()
lazy_obj.do_stuff()
然后我看到了一些简单地使用的例子:
def some_funk()
import lazy_module
lazy_obj = lazy_module.LazyClass()
lazy_obj.do_stuff()
我更喜欢以后使用,并将我的代码重写为这个。
但我的问题是,这两种懒惰导入的方式是否有区别
解决方案
您可能需要查看导入文档的文档。import lazy_module
在内部调用__import__("lazy_module")
.
导入的惰性部分来自它们都在函数中完成,而不是在类/脚本的顶部。
推荐阅读
- symfony - 如何检查 Symfony 中是否未使用库?
- ms-access - 追加查询 - 多个表到单个表
- javascript - Angular 4 ERROR TypeError:无法读取未定义的属性“过滤器”
- c# - 如何删除图片框上所有绘制的矩形?(不在图片上)
- asp.net-core - 在 RepositoryController Asp.Net Core 上运行测试时,这个错误在抱怨什么?
- javascript - 如何在单元格单击时单击融合图表热图的事件?
- android - 片段中的 RecyclerView 不起作用(无法向其中添加数据)
- postgresql - Django 1.11 - 按 Postgresql xmin 列排序查询集
- typescript - 在开玩笑测试中调用 new class() 后没有创建新的类实例
- asp.net-identity - ASP.NET Core Identity、IdentityServer4 和更改密码