]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-100792: Make `email.message.Message.__contains__` twice as fast (#100793)
authorNikita Sobolev <mail@sobolevn.me>
Sat, 7 Jan 2023 21:26:05 +0000 (00:26 +0300)
committerGitHub <noreply@github.com>
Sat, 7 Jan 2023 21:26:05 +0000 (13:26 -0800)
Lib/email/message.py
Misc/NEWS.d/next/Library/2023-01-06-14-05-15.gh-issue-100792.CEOJth.rst [new file with mode: 0644]

index 65fda507251ce374941856b5563035e566414d66..b540c33984a753aeaad86003349f12c2fe481ff8 100644 (file)
@@ -448,7 +448,11 @@ class Message:
         self._headers = newheaders
 
     def __contains__(self, name):
-        return name.lower() in [k.lower() for k, v in self._headers]
+        name_lower = name.lower()
+        for k, v in self._headers:
+            if name_lower == k.lower():
+                return True
+        return False
 
     def __iter__(self):
         for field, value in self._headers:
diff --git a/Misc/NEWS.d/next/Library/2023-01-06-14-05-15.gh-issue-100792.CEOJth.rst b/Misc/NEWS.d/next/Library/2023-01-06-14-05-15.gh-issue-100792.CEOJth.rst
new file mode 100644 (file)
index 0000000..5966bc1
--- /dev/null
@@ -0,0 +1 @@
+Make :meth:`email.message.Message.__contains__` twice as fast.