From 75d92c18646ff7bfbfe39b21cc38dfb0b12e00d7 Mon Sep 17 00:00:00 2001 From: Guido van Rossum Date: Thu, 2 Apr 1998 21:33:20 +0000 Subject: Added a __delitem__ to the Message class. (Still no __setitem__, until I get a request to add it!) --- Lib/rfc822.py | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/Lib/rfc822.py b/Lib/rfc822.py index e6e0696..9d76f6d 100644 --- a/Lib/rfc822.py +++ b/Lib/rfc822.py @@ -284,6 +284,28 @@ class Message: """Get a specific header, as from a dictionary.""" return self.dict[string.lower(name)] + def __delitem__(self, name): + """Delete all occurrences of a specific header, if it is present.""" + name = string.lower(name) + if not self.dict.has_key(name): + return + del self.dict[name] + name = name + ':' + n = len(name) + list = [] + hit = 0 + for i in range(len(self.headers)): + line = self.headers[i] + if string.lower(line[:n]) == name: + hit = 1 + elif line[:1] not in string.whitespace: + hit = 0 + if hit: + list.append(i) + list.reverse() + for i in list: + del self.headers[i] + def has_key(self, name): """Determine whether a message contains the named header.""" return self.dict.has_key(string.lower(name)) -- cgit v0.12