How to print a single backslash?
When I write print('\')
or print("\")
or print("'\'")
, Python doesn't print the backslash \
symbol. Instead it errors for the first two and prints ''
for the second. What should I do to print a backslash?
Solution 1:
You need to escape your backslash by preceding it with, yes, another backslash:
print("\\")
And for versions prior to Python 3:
print "\\"
The \
character is called an escape character, which interprets the character following it differently. For example, n
by itself is simply a letter, but when you precede it with a backslash, it becomes \n
, which is the newline character.
As you can probably guess, \
also needs to be escaped so it doesn't function like an escape character. You have to... escape the escape, essentially.
See the Python 3 documentation for string literals.
Solution 2:
A backslash needs to be escaped with another backslash.
print('\\')
Solution 3:
A hacky way of printing a backslash that doesn't involve escaping is to pass its character code to chr
:
>>> print(chr(92))
\