diff -r da59b7084dbe Lib/pdb.py --- a/Lib/pdb.py Wed Nov 16 08:06:12 2016 +0100 +++ b/Lib/pdb.py Wed Nov 16 21:32:28 2016 +0100 @@ -364,6 +364,9 @@ if line[:1] == '!': line = line[1:] locals = self.curframe_locals globals = self.curframe.f_globals + ns = globals.copy() + ns['globals'] = lambda : globals + ns.update(locals) try: code = compile(line + '\n', '', 'single') save_stdout = sys.stdout @@ -373,7 +376,7 @@ sys.stdin = self.stdin sys.stdout = self.stdout sys.displayhook = self.displayhook - exec(code, globals, locals) + exec(code, ns, locals) finally: sys.stdout = save_stdout sys.stdin = save_stdin