按需进口,取自Mercurial
demandimport的Python项目详细描述
需求端口
延迟加载模块,直到模块实际使用。非常适合python 需要像命令行实用程序一样快速的应用程序。源代码派生 来自Mercurial。
要启用,请写入
importdemandimport;demandimport.enable()
以下表单的导入将被延迟
importa,b.cimporta.bascfromaimportb,c# a will be loaded immediately, though
这些进口不会延迟
fromaimport*b=__import__(a)
延迟加载会混淆一些第三方模块。那样的话你 可以仅禁用该模块的延迟例如
demandimport.ignore('Crypto.PublicKey._fastmath')
还有一些版本可以与with
一起使用withdemandimport.enabled():# do somethingwithdemandimport.disabled():importtroublesome.modulewithdemandimport.ignored('test'):importother.troublemaker
安装
要安装demandimport,只需运行:
pip install demandimport
归因
matt mackall<;mpm@selenic.com>;是 本模块所基于的Mercurial。巴斯韦斯特巴恩<;bas@westerbaan.name>; 现在就维护它。
py demandimport更改日志
0.3.4(2017-06-08)
- python 3.6
- 将sip添加到默认忽略列表。#6
0.3.3(2016-10-20)
- 添加is_loaded和is_proxy。 感谢:github.com/poke1024
0.3.2(2015-12-22)
- 已修复问题2:import a.b.c将不正确地尝试导入b.c
0.3.1(2015-12-21)
- 重新授权GPL版本2或更高版本(GPLV2+)
0.3.0(2015-12-21)
- 在特殊情况下不要耽搁重要的事情。
- 添加可选日志记录(用于调试)
- 已修复问题1:模块中的import a.b未正确执行a.c。 作为一个相对的import c
- 提高线程安全性
0.2.2(2015-12-05)
- 已移动到zest.releaser
- 添加一些基本单元测试
- python 3支持