How do I un-escape a backslash-escaped string in Python?



There are two ways to go about unescaping backslash escaped strings in Python. First is using literal_eval to evaluate the string. Note that in this method you need to surround the string in another layer of quotes. For example:

>>> import ast
>>> a = '"Hello,\nworld"'
>>> print ast.literal_eval(a)
Hello,
world

Another way is to use the decode('string_escape') method from the string class. For example,

>>> print "Hello,\nworld".decode('string_escape')
Hello,
world

Advertisements