On 4/6/2012 1:52 PM, Nicholas Cole wrote:
In Python 2 given the following raw string:

s = r"Hello\x3a this is a test"

the escaping could be removed by use of the following:

s.decode('string_escape')

In Python 3, however, the only way I can see to achieve the same
result is to convert into a byte stream and then back:

bytes(s, 'utf-8').decode('unicode_escape')


This seems very ugly (and slightly 'wrong').  Is there no way to do
this without using bytes?  Have I missed something?

>>> eval("'"+s+"'")
'Hello: this is a test'

--
Terry Jan Reedy

--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to