Advertisement
here2share

# find_core_modules.py

Apr 11th, 2018
190
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.67 KB | None | 0 0
  1. # find_core_modules.py
  2.  
  3. _builtins = []
  4. _other_modules = []
  5. _other_modules_attr = []
  6.  
  7. def oText(modules):
  8.     sss = '\n' + ' '*10
  9.     spc = '\n' + ' '*16
  10.    
  11.     def output(s,zzz):
  12.         print s
  13.         for z in zzz:
  14.             print
  15.             print '   ',z
  16.         print
  17.    
  18.     for module in modules:
  19.         zzz = sub = ''
  20.         try:
  21.             mod = __import__(module)
  22.             sub = dir(mod)
  23.             sub = spc.join(sub)
  24.             doc = mod.__doc__.splitlines()
  25.             doc = sss.join(['']+doc) + '\n'
  26.             tab = ' '*(30-len(module))
  27.             zzz = '{}{}{}{}{}'.format(module, tab, doc, spc, sub)
  28.         except:
  29.             0
  30.         if module in sys.builtin_module_names:
  31.             zzz = '{}{}{}'.format(module, spc, sub)
  32.             if zzz not in _builtins:
  33.                 _builtins.append(zzz)
  34.         else:
  35.             if module not in _other_modules:
  36.                 _other_modules.append(module)
  37.                 if zzz:
  38.                     _other_modules_attr.append(zzz)
  39.                
  40.     _builtins.sort()
  41.     _other_modules.sort()
  42.     _other_modules_attr.sort()
  43.    
  44.     output('Built-In Modules:', _builtins)
  45.     output('3rd-Party Modules:', _other_modules)
  46.     output('...', _other_modules_attr)
  47.  
  48. import sys, os
  49. import __builtin__
  50.  
  51. print str(len(dir(__builtin__))) + ' built-in functions and variables\n'
  52.  
  53. print 'Filepaths Of Modules:'
  54. modules_in_each_path = []
  55. for f in sys.path:
  56.     print '   ', f
  57.     if '\\lib\\' in f and '\\Python' in f:
  58.         for root, _, dir_files in os.walk(f):
  59.             for df in dir_files:
  60.                 if '.py' in df:
  61.                     df,z = df.rsplit('.',1)
  62.                     try:
  63.                         __import__(df)
  64.                         if df not in modules_in_each_path:
  65.                             modules_in_each_path.append(df)
  66.                     except:
  67.                         0
  68. print
  69.  
  70. search = (sys.builtin_module_names, sys.modules.keys(), dir(__builtin__), modules_in_each_path)
  71. search = [val for sublist in search for val in sublist]
  72.  
  73. oText(search)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement