diff --git a/django/utils/autoreload.py b/django/utils/autoreload.py index 736e88cfe9..2ca4d6f74a 100644 --- a/django/utils/autoreload.py +++ b/django/utils/autoreload.py @@ -98,8 +98,8 @@ def iter_all_python_module_files(): # modules based on the module name and pass it to iter_modules_and_files(). # This ensures cached results are returned in the usual case that modules # aren't loaded on the fly. - modules_view = sorted(list(sys.modules.items()), key=lambda i: i[0]) - modules = tuple(m[1] for m in modules_view if not isinstance(m[1], weakref.ProxyTypes)) + keys = sorted(sys.modules) + modules = tuple(m for m in map(sys.modules.__getitem__, keys) if not isinstance(m, weakref.ProxyTypes)) return iter_modules_and_files(modules, frozenset(_error_files)) diff --git a/tests/utils_tests/test_datastructures.py b/tests/utils_tests/test_datastructures.py index 0513df69b2..3400b1d65a 100644 --- a/tests/utils_tests/test_datastructures.py +++ b/tests/utils_tests/test_datastructures.py @@ -168,7 +168,7 @@ class CaseInsensitiveMappingTests(SimpleTestCase): CaseInsensitiveMapping([(1, '2')]) def test_list(self): - self.assertEqual(sorted(list(self.dict1)), sorted(['Accept', 'content-type'])) + self.assertEqual(list(self.dict1), ['Accept', 'content-type']) def test_dict(self): self.assertEqual(dict(self.dict1), {'Accept': 'application/json', 'content-type': 'text/html'})