Karena \
memulai urutan escape hanya jika merupakan urutan escape yang valid.
>>> '\n'
'\n'
>>> r'\n'
'\\n'
>>> print '\n'
>>> print r'\n'
\n
>>> '\s'
'\\s'
>>> r'\s'
'\\s'
>>> print '\s'
\s
>>> print r'\s'
\s
Kecuali ada awalan 'r' atau 'R', urutan escape dalam string diinterpretasikan menurut aturan yang serupa dengan yang digunakan oleh Standar C. Urutan escape yang dikenali adalah:
Escape Sequence Meaning Notes
\newline Ignored
\\ Backslash (\)
\' Single quote (')
\" Double quote (")
\a ASCII Bell (BEL)
\b ASCII Backspace (BS)
\f ASCII Formfeed (FF)
\n ASCII Linefeed (LF)
\N{name} Character named name in the Unicode database (Unicode only)
\r ASCII Carriage Return (CR)
\t ASCII Horizontal Tab (TAB)
\uxxxx Character with 16-bit hex value xxxx (Unicode only)
\Uxxxxxxxx Character with 32-bit hex value xxxxxxxx (Unicode only)
\v ASCII Vertical Tab (VT)
\ooo Character with octal value ooo
\xhh Character with hex value hh
Jangan pernah mengandalkan string mentah untuk literal jalur, karena string mentah memiliki cara kerja bagian dalam yang agak aneh , yang diketahui telah menggigit orang di pantat:
Ketika awalan "r" atau "R" ada, karakter setelah garis miring terbalik disertakan dalam string tanpa perubahan, dan semua garis miring terbalik tertinggal di string. Misalnya, string literal r"\n"
terdiri dari dua karakter: garis miring terbalik dan huruf kecil "n". Tanda kutip string bisa di-escape dengan garis miring terbalik, tetapi garis miring terbalik tetap ada di string; misalnya, r"\""
adalah string literal valid yang terdiri dari dua karakter: garis miring terbalik dan tanda kutip ganda; r"\"
bukan literal string yang valid (bahkan string mentah tidak boleh diakhiri dengan garis miring terbalik dalam jumlah ganjil). Secara khusus, string mentah tidak boleh diakhiri dengan satu garis miring terbalik (karena garis miring terbalik akan keluar dari karakter kutipan berikut). Perhatikan juga bahwa satu garis miring terbalik diikuti oleh baris baru diartikan sebagai dua karakter sebagai bagian dari string,
Untuk mengilustrasikan poin terakhir ini dengan lebih baik:
>>> r'\'
SyntaxError: EOL while scanning string literal
>>> r'\''
"\\'"
>>> '\'
SyntaxError: EOL while scanning string literal
>>> '\''
"'"
>>>
>>> r'\\'
'\\\\'
>>> '\\'
'\\'
>>> print r'\\'
\\
>>> print r'\'
SyntaxError: EOL while scanning string literal
>>> print '\\'
\
'\s'
(liker'\s'
) juga direpresentasikan sebagai'\\s'
, karena'\s'
tidak dikenali sebagai escape sequence.