[Python-Dev] Add transform() and untranform() methods
facundobatista at gmail.com
Fri Nov 15 13:58:05 CET 2013
On Thu, Nov 14, 2013 at 7:32 PM, Victor Stinner
<victor.stinner at gmail.com> wrote:
> I would prefer to split the registry of codecs to have 3 registries:
> - "encoding" (a better name can found): encode str=>bytes, decode bytes=>str
> - bytes: encode bytes=>bytes, decode bytes=>bytes
> - str: encode str=>str, decode str=>str
> And add transform() and untransform() methods to bytes and str types.
> In practice, it might be same codecs registry for all codecs just with
> a new attribute.
I like this idea very much.
But to see IIUC, let me be more explicit... you'll have (of course,
- bytes.decode() -> str ... here you can only use unicode encodings
- no bytes.encode(), like today
- bytes.transform() -> bytes ... here you can only use things like
zlib, rot13, etc
- str.encode() -> bytes ... here you can only use unicode encodings
- no str.decode(), like today
- str.transform() -> str ... here you can only use things like... like what?
When to use decode/encode was always a major pain point for people, so
doing this extra separation and cleaning would bring more clarity to
when to use what.
More information about the Python-Dev