diff --git a/Lib/inspect.py b/Lib/inspect.py
index 80f65b5..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__)
