1 # -*- coding: utf-8 -*- 2 import sys 3 4 try: 5 from ._version import version as __version__ 6 except ImportError: 7 __version__ = 'unknown' 8 9 __all__ = ['easter', 'parser', 'relativedelta', 'rrule', 'tz', 10 'utils', 'zoneinfo'] 11 12 def __getattr__(name): 13 import importlib 14 15 if name in __all__: 16 return importlib.import_module("." + name, __name__) 17 raise AttributeError( 18 "module {!r} has not attribute {!r}".format(__name__, name) 19 ) 20 21 22 def __dir__(): 23 # __dir__ should include all the lazy-importable modules as well. 24 return [x for x in globals() if x not in sys.modules] + __all__ 25