Escape Characters
To insert characters that are illegal in a string, use an escape character.
An escape character is a backslash \
followed by the character you want to insert.
An example of an illegal character is a double quote inside a string that is surrounded by double quotes:
Example
You will get an error if you use double quotes inside a string that is surrounded by double quotes:
txt = "We are the so-called "Vikings" from the north."
Try it Yourself »
To fix this problem, use the escape character \"
:
Example
The escape character allows you to use double quotes when you normally would not be allowed:
txt = "We are the so-called \"Vikings\" from the north."
Try it Yourself »
Other escape characters used in Python:
\' | Single Quote | Try it » |
\\ | Backslash | Try it » |
\n | New Line | Try it » |
\r | Carriage Return | Try it » |
\t | Tab | Try it » |
\b | Backspace | Try it » |
\f | Form Feed | |
\ooo | Octal value | Try it » |
\xhh | Hex value | Try it » |
Escape sequences allow you to include special characters in strings. To do this, simply add a backslash [\
] before the character you want to escape.
For example, imagine you initialized a string with single quotes:
s = 'Hey, whats up?'
print[s]
Output:
Hey, whats up?
But if you include an apostrophe without escaping it, then you will get an error:
s = 'Hey, what's up?'
print[s]
Output:
File "main.py", line 1
s = 'Hey, what's up?'
^
SyntaxError: invalid syntax
To fix this, just escape the apostrophe:
s = 'Hey, what\'s up?'
print[s]
To add newlines to
your string, use \n
:
print["Multiline strings\ncan be created\nusing escape sequences."]
Output:
Multiline strings
can be created
using escape sequences.
An important thing to remember is that, if you want to include a backslash character in a string, you will need to escape that. For example, if you want to print a directory path in Windows, you'll need to escape each backslash in the string:
print["C:\\Users\\Pat\\Desktop"]
Output:
C:\Users\Pat\Desktop
Raw strings
A raw string can be used by prefixing the string with r
or R
, which
allows for backslashes to be included without the need to escape them. For example:
print[r"Backslashes \ don't need to be escaped in raw strings."]
Output:
Backslashes \ don't need to be escaped in raw strings.
But keep in mind that unescaped backslashes at the end of a raw string will cause and error:
print[r"There's an unescaped backslash at the end of this string\"]
Output:
File "main.py", line 1
print[r"There's an unescaped backslash at the end of this string\"]
^
SyntaxError: EOL while scanning string literal
Common escape sequences
\ | Backslash [\ ]
|
' | Single quote [' ]
|
" | Double quote [" ]
|
\n | ASCII Linefeed [adds newline] |
\b | ASCII Backspace |
A full list of escape sequences can be found here in the Python docs.
Learn to code for free. freeCodeCamp's open source curriculum has helped more than 40,000 people get jobs as developers. Get started
What is escape sequence?
The sequence of character which has indirect meaning when it placed within double quotes.
It will optimize some the repetitive tasks while programming.
Example
While printing some statement, if you want to give horizontal tab [usually four spaces] in between every word like below,
Example
#escape sequence example print["Happy New Year"]
Here, we manually gave four space between each word. This can be achieved easily with \t escape sequence.
Like below,
Example
#escape sequence in python print["Happy\tNew\tYear"]
Useful Escape Sequences
\n | New line | print["Hello\nWorld"] | Hello World |
\t | Horizontal tab | print["Hello\tWorld"] | Hello World |
\' | Single quote | print["Hello \'World\' "] | Hello 'World' |
\" | Double quote | print["Hello \"World\" "] | Hello "World" |
\\ | Backslash | print["Hello \\World"] | Hello \World |