Re: headers api for email package
Chris Withers <[email protected]>
| Newsgroups | gmane.comp.python.devel,gmane.comp.python.mime.devel |
|---|---|
| Message-ID | <[email protected]> |
Barry Warsaw wrote:
> >>> message['Subject']
>
> The raw bytes or the decoded unicode?
A header object.
> Okay, so you've picked one. Now how do you spell the other way?
str(message['Subject'])
bytes(message['Subject'])
> Now, setting headers. Sometimes you have some unicode thing and
> sometimes you have some bytes. You need to end up with bytes in the
> ASCII range and you'd like to leave the header value unencoded if so.
> But in both cases, you might have bytes or characters outside that
> range, so you need an explicit encoding, defaulting to utf-8 probably.
>
> >>> Message.set_header('Subject', 'Some text', encoding='utf-8')
> >>> Message.set_header('Subject', b'Some bytes')
Where you just want "a damned valid email and stop making my life hard!":
Message['Subject']='Some text'
Where you care about what encoding is used:
Message['Subject']=Header('Some text',encoding='utf-8')
If you have bytes, for whatever reason:
Message['Subject']=b'some bytes'.decode('utf-8')
...because only you know what encoding those bytes use!
> One of those maps to
>
> >>> message['Subject'] = ???
...should only accept text or a Header object.
Chris
--
Simplistix - Content Management, Zope & Python Consulting
- http://www.simplistix.co.uk
_______________________________________________
Python-Dev mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/python-python-dev%40m.gmane.org