1import sys 2import os 3def _reset_plugins(dir): 4 l = os.listdir(dir) 5 l = [os.path.join(dir, fn) for fn in l if not fn.startswith('__')] 6 l = [os.path.basename(fn) for fn in l if os.path.isdir(fn)] 7 print() 8 for s in l: 9 name = 'xx' + s 10 if name in globals(): 11 print('Reset plugin: ' + s) 12 exec('global %s; del %s' % (name, name)) 13 if s in sys.modules: 14 del sys.modules[s] 15 submods = [sm for sm in sys.modules.keys() if sm.startswith(s+'.')] 16 for sm in submods: 17 del sys.modules[sm] 18