Swift51.com
麦子学院 头像
麦子学院  2017-08-30 20:02

Python学习之模块按需加载方法详解

回复:0  查看:2386  
有时候不想一开始就把模块加载进来,当调用这个模块的函数时,再加载,这样有什么方法吗?本文和大家分享的就是python 中模块按需加载相关内容,一起来看看吧,希望对大家 学习python有所帮助。
  具体的模块按需加载, 可以按下面的例子来实现:
  # 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 软件开发