45. def parse_header(line):
plist = map(string.strip, string.splitfields(line, ';'))
key = string.lower(plist[0])
del plist[0]
pdict = {}
for p in plist:
i = string.find(p, '=')
if i >= 0:
name = string.lower(string.strip(p[:i]))
value = string.strip(p[i+1:])
if len(value) >= 2 and value[0] == value[-1] == '"':
value = value[1:-1]
pdict[name] = value
return key, pdict
def parse_header(line):
parts = _parseparam(';' + line)
key = parts.__next__()
pdict = {}
for p in parts:
i = p.find('=')
if i >= 0:
name = p[:i].strip().lower()
value = p[i+1:].strip()
if len(value) >= 2 and value[0] == value[-1] == '"':
value = value[1:-1]
value = value.replace('', '').replace('"', '"')
pdict[name] = value
return key, pdict