Advertisement
Guest User

Untitled

a guest
Feb 19th, 2017
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.79 KB | None | 0 0
  1. # main.py
  2. from submodule import some
  3. from easyconf import parse_args
  4.  
  5. if __name__ == '__main__':
  6. print(some())
  7.  
  8. # submodule.py
  9. import conf
  10.  
  11. def some():
  12. return 'a' + conf.conf['somekey']
  13.  
  14. # pth file
  15. import easyconf
  16. import sys; sys.meta_path.append(easyconf.CustomImporter())
  17.  
  18. import sys
  19.  
  20. class CustomImporter:
  21. name = 'conf'
  22.  
  23. def find_module(self, fullname, path):
  24. return self if fullname == self.name else None
  25.  
  26. def load_module(self, fullname):
  27. module = sys.modules.get(fullname)
  28. if module:
  29. return module
  30. if fullname != self.name:
  31. raise ImportError(fullname)
  32. sys.modules[fullname] = ConfigModule(None)
  33. return sys.modules[fullname]
  34.  
  35. class ConfigModule:
  36. def __init__(self, conf=None):
  37. self.conf = conf
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement