在 Python 中引用字符串中的反斜杠

在 Python 中引用字符串中的反斜杠

Quoting a Backslash in a string in Python

在单引号和双引号之间交替引用字符串中的反斜杠,例如my_str = 'bobby "\\" hadz'. 反斜杠字符在 Python 中具有特殊含义,因此必须使用第二个反斜杠对它们进行转义。

主程序
# ✅ quote a backslash in a string (escaping) my_str = 'bobby "\\" hadz' print(my_str) # 👉️ bobby "\" hadz # ------------------------------------- # ✅ quote a backslash in a string (raw string) my_str = r'bobby "\" hadz' print(my_str) # 👉️ bobby "\" hadz # ------------------------------------- # ✅ quote a backslash (str.replace()) my_str = 'bobby \\ hadz' print(my_str) # 👉️ bobby \ hadz my_str = my_str.replace('\\', '"\\"') print(my_str) # 👉️ bobby "\" hadz
反斜杠\字符在 Python 中具有特殊含义 – 它用作转义字符(例如\nor \t)。

通过添加第二个反斜杠,我们将反斜杠 ( \) 视为文字字符。

主程序
my_str = 'bobby "\\" hadz' print(my_str) # 👉️ bobby "\" hadz

请注意,我们将字符串用单引号括起来,并使用双引号来引用反斜杠字符。

您必须在单引号和双引号之间交替使用,否则,您会过早地终止字符串。

下面是使用单引号引用反斜杠的示例。

主程序
my_str = "bobby '\\' hadz" print(my_str) # 👉️ bobby '\' hadz

如果您需要包含多个并排的反斜杠,请确保对每个反斜杠进行转义。

主程序
my_str = 'bobby "\\\\" hadz' print(my_str) # 👉️ bobby "\\" hadz

或者,您可以使用原始字符串。

使用原始字符串在字符串中引用反斜杠

使用原始字符串来引用反斜杠,例如my_str = r'bobby "\" hadz'. 带有前缀的r字符串称为原始字符串,并将反斜杠视为文字字符。

主程序
my_str = r'bobby "\" hadz' print(my_str) # 👉️ bobby "\" hadz

我们在字符串前加上前缀r,因此反斜杠被视为文字字符。

但是,我们仍然需要在单引号和双引号之间交替使用。

如果您有一个存储包含反斜杠的字符串的变量并且需要引用反斜杠,请使用该str.replace()方法。
主程序
my_str = 'bobby \\ hadz \\' print(my_str) # 👉️ bobby \ hadz \ my_str = my_str.replace('\\', '"\\"') print(my_str) # 👉️ bobby "\" hadz "\"

我们使用该str.replace()方法将每次出现的反斜杠替换为用引号引起来的反斜杠。

如果您只需要引用字符串中的第一个反斜杠,请将第三个参数传递给该replace()方法。

主程序
my_str = 'bobby \\ hadz \\' print(my_str) # 👉️ bobby \ hadz \ my_str = my_str.replace('\\', '"\\"', 1) print(my_str) # 👉️ bobby "\" hadz \

str.replace方法返回字符串
的副本,其中所有出现的子字符串都被提供的替换项替换。

该方法采用以下参数:

姓名 描述
老的 字符串中我们要替换的子串
新的 每次出现的替换old
数数 count替换第一次出现的(可选)

该方法不会更改原始字符串。字符串在 Python 中是不可变的。

发表评论