Least-lossy string.encode to us-ascii?

Tim Chase python.list at tim.thechases.com
Thu Sep 13 22:34:52 EDT 2012


On 09/13/12 21:09, Mark Tolonen wrote:
> On Thursday, September 13, 2012 4:53:13 PM UTC-7, Tim Chase wrote:
>> Vlastimil's solution kept the characters but stripped them of their
>> accents/tildes/cedillas/etc, doing just what I wanted, all using the
>> stdlib.  Hard to do better than that :-)
> 
> How about using UTF-7 for transmission and decode on the other end?  This keeps the transmission all 7-bit, and no loss.
> 
>     >>> s=u"serviço móvil".encode('utf-7')
>     >>> print s
>     servi+AOc-o m+APM-vil
>     >>> print s.decode('utf-7')
>     serviço móvil

Nice if I control both ends of the pipe.  Unfortunately, I only
control what goes in, and I want it to be as un-screw-uppable as
possible when it comes out the other end (may be web, CSV files,
PDFs, FTP'ed file dumps, spreadsheets, word-processing documents,
etc), and us-ascii is the lowest-common-denominator of
unscrewuppableness while requiring nothing of the the other end. :-)

-tkc







More information about the Python-list mailing list