Python 中的原始字符串

Lakshay Kapoor 2023年1月30日 2021年10月2日
  1. Python 中的原始字符串
  2. Python 中的原始字符串无效
  3. 在 Python 中使用原始字符串
Python 中的原始字符串

在 Python 中有很多表示字符串的方法。表示字符串的一种方法是将它们转换为原始字符串。

本教程将在 Python 中定义一个原始字符串。

Python 中的原始字符串

Python 中的原始字符串只是任何以 rR 为前缀的普通字符串。字符串中出现的任何反斜杠 (\) 都被视为真正的或文字字符。例如,如果字符串中间有 \n\t,它将被视为一个字符,而不是 newlinetab 字符。

让我们举一个例子,在字符串之间使用换行符\n,而不用 rR 作为字符串前缀。

print("Hi\nHow are you?")

输出:

Hi
How are you?

现在让我们用原始字符串字符 r 作为整个字符串的前缀。

print(r"Hi\nHow are you?")

输出:

Hi\nHow are you?

如你所见,换行符 \n 被视为文字字符串而不是某些特殊字符。

Python 中的原始字符串无效

单个反斜杠 \ 在 Python 中不被视为有效的原始字符串。

print(r"\")

输出:

File "<ipython-input-6-6cdee2fbdda0>", line 1
    print(r"\")
               ^
SyntaxError: EOL while scanning string literal

在 Python 中使用原始字符串

在 Python 中,原始字符串用于在完全未处理时返回字符串。这意味着如果字符串以 rraw string 为前缀,并且该字符串包含任何无效的转义字符,如 \x,则不会发生错误。

这是一个示例代码。

print("Hi\xHow are you?")

输出:

 File "<ipython-input-15-1056651b28e1>", line 1
    print("Hi \x How are you?")
          ^
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 3-4: truncated \xXX escape

请注意,字符串没有以 r 为前缀,并且字符串之间存在无效的转义字符。因此,发生了错误。

Lakshay Kapoor avatar Lakshay Kapoor avatar

Lakshay Kapoor is a final year B.Tech Computer Science student at Amity University Noida. He is familiar with programming languages and their real-world applications (Python/R/C++). Deeply interested in the area of Data Sciences and Machine Learning.

LinkedIn

相关文章 - Python String