diff options
author | Fred Drake <fdrake@acm.org> | 1999-04-28 21:17:38 (GMT) |
---|---|---|
committer | Fred Drake <fdrake@acm.org> | 1999-04-28 21:17:38 (GMT) |
commit | ddf22c4243c38e819a07cbad53b8711c08e5563f (patch) | |
tree | a6c5f98c8afafb34a772cabac2155945989555f9 /Lib/rfc822.py | |
parent | a4b055ff8924b8965c8ac4f6d3b532a85f6ebd35 (diff) | |
download | cpython-ddf22c4243c38e819a07cbad53b8711c08e5563f.zip cpython-ddf22c4243c38e819a07cbad53b8711c08e5563f.tar.gz cpython-ddf22c4243c38e819a07cbad53b8711c08e5563f.tar.bz2 |
Message.getheader(): Fixed grammatical error in docstring.
Message.getheaders(): Method to get list of all values for each
instance of a named header. See docstring for more.
Diffstat (limited to 'Lib/rfc822.py')
-rw-r--r-- | Lib/rfc822.py | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/Lib/rfc822.py b/Lib/rfc822.py index 292b3c9..fbab3c8 100644 --- a/Lib/rfc822.py +++ b/Lib/rfc822.py @@ -272,7 +272,7 @@ class Message: def getheader(self, name, default=None): """Get the header value for a name. - This is the normal interface: it return a stripped + This is the normal interface: it returns a stripped version of the header value for a given header name, or None if it doesn't exist. This uses the dictionary version which finds the *last* such header. @@ -282,6 +282,31 @@ class Message: except KeyError: return default get = getheader + + def getheaders(self, name): + """Get all values for a header. + + This returns a list of values for headers given more than once; + each value in the result list is stripped in the same way as the + result of getheader(). If the header is not given, return None. + """ + result = [] + current = '' + have_header = 0 + for s in self.getallmatchingheaders(name): + if s[0] in string.whitespace: + if current: + current = "%s\n %s" % (current, string.strip(s)) + else: + current = string.strip(s) + else: + if have_header: + result.append(current) + current = string.strip(s[string.find(s, ":") + 1:]) + have_header = 1 + if have_header: + result.append(current) + return result or None def getaddr(self, name): """Get a single address from a header, as a tuple. |