The Python ascii()
method returns a string containing a printable representation of an object. However, ascii()
function escapes the non-ASCII characters in the string using \x
, \u
or \U
escapes.
ascii( object )
The ascii()
method takes an object like lists, strings etc as the parameter.
As we already mentioned, ascii()
method returns the printable version of a string escaping the non-ASCII character using \x
, \u
or \U
escapes.
Earlier in Python2, repr()
method was used to return the printable representation of an object but it didn’t escape the non-ASCII characters.
For example, ë
is represented as ë
by repr()
method, but by ascii()
method, it is represented by Python escape sequence \xeb
. Similarly, ö
is represented as ö
by repr()
and \xf6n
by ascii()
method.
Here is an example code.
>>> print(repr('ë'))
'ë'
>>> print(ascii('ë'))
'\xeb'
>>> str1 = 'Python Unicode'
>>> print(ascii(str1))
'Python Programming'
>>> str2 = 'Pythön Unicödë'
>>> print(ascii(str2))
'Pyth\xf6nn Unic\xf6nd\xeb'
As you can see in above script, ö
is represented by escape sequence \xf6n
and ë
by \xeb
when used with Python ascii()
method.