Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What does an 'r' represent before a string in python? [duplicate]

I want to understand why do we use a r before a path name in python such as

dirname = r'C:\temp\parts' 
like image 909
Rahul Avatar asked Nov 16 '15 05:11

Rahul


People also ask

What does '\ r mean in Python?

In Python strings, the backslash "\" is a special character, also called the "escape" character. It is used in representing certain whitespace characters: "\t" is a tab, "\n" is a newline, and "\r" is a carriage return.

What does \r mean in a string?

Show activity on this post. The r means that the string is to be treated as a raw string, which means all escape codes will be ignored. For an example: '\n' will be treated as a newline character, while r'\n' will be treated as the characters \ followed by n .

What does R mean before string?

R Means 'Raw String' An 'r' before a string tells the Python interpreter to treat backslashes as a literal (raw) character. Normally, Python uses backslashes as escape characters.

What is R at the end of string in Python?

String quotes can be escaped with a backslash, but the backslash remains in the string; for example, r"\"" is a valid string literal consisting of two characters: a backslash and a double quote; r"\" is not a valid string literal (even a raw string cannot end in an odd number of backslashes).


1 Answers

r means the string will be treated as raw string.

See the official Python 2 Reference about "String literals":

When an 'r' or 'R' prefix is present, a character following a backslash is included in the string without change, and all backslashes are left in the string. For example, the string literal r"\n" consists of two characters: a backslash and a lowercase 'n'. String quotes can be escaped with a backslash, but the backslash remains in the string; for example, r"\"" is a valid string literal consisting of two characters: a backslash and a double quote; r"\" is not a valid string literal (even a raw string cannot end in an odd number of backslashes). Specifically, a raw string cannot end in a single backslash (since the backslash would escape the following quote character). Note also that a single backslash followed by a newline is interpreted as those two characters as part of the string, not as a line continuation.

like image 151
Rahul Tripathi Avatar answered Sep 30 '22 22:09

Rahul Tripathi