麦子学院 2017-08-30 20:02
Python学习之模块按需加载方法详解
回复:0 查看:2386
具体的模块按需加载,
可以按下面的例子来实现:
# File: builtin-import-example-3.py
class
LazyImport:
def
__init__(self, module_name):
self.module_name = module_name
self.module =
None
def
__getattr__(self, name):
if self.module
is
None:
self.module = __import__(self.module_name)
return getattr(self.module, name)
string = LazyImport("string")
print(string.ascii_letters)
运行结果输出如下:
=== RESTART: D:/work/csdn/python_Game1/example/builtin-import-example-3.py ===
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
>>>
在这个例子里,只当调用函数LazyImport
()才会加载相应的模块。
来源:
大坡3D
软件开发