Make module lookup a little more robust (certain kinds of fiddling to
    sys.modules previously produced an exception).
diff --git a/Lib/inspect.py b/Lib/inspect.py
index 80f65b53..4baebe0 100644
--- a/Lib/inspect.py
+++ b/Lib/inspect.py
@@ -366,12 +366,12 @@
     except TypeError:
         return None
     if file in modulesbyfile:
-        return sys.modules[modulesbyfile[file]]
+        return sys.modules.get(modulesbyfile[file])
     for module in sys.modules.values():
         if hasattr(module, '__file__'):
             modulesbyfile[getabsfile(module)] = module.__name__
     if file in modulesbyfile:
-        return sys.modules[modulesbyfile[file]]
+        return sys.modules.get(modulesbyfile[file])
     main = sys.modules['__main__']
     if hasattr(main, object.__name__):
         mainobject = getattr(main, object.__name__)