Python:字符串变量如何防止转义


>>>m = "frac{7x+5}{1+y^2}"
>>>print(m)
rac{7x+5}{1+y^2}
>>>print(r""+m)
rac{7x+5}{1+y^2}
>>>print(r"{}".format(m))
rac{7x+5}{1+y^2}
>>>print(repr(m))
'x0crac{7x+5}{1+y^2}'

我想要结果:"\frac{7x+5}{1+y^2}"必须是字符串变量!!!

您需要包含斜杠的字符串文字作为原始字符串。

m = r"frac{7x+5}{1+y^2}"

原始字符串只是编写字符串的另一种方式。他们不是不同的类型。例如,r""""完全相同,因为没有可转义的字符,它不会生成某种原始空字符串,并且将其添加到另一个字符串中不会改变任何内容。

另一个选项是将转义符添加到转义符中,以表示它是字符串文字

m = "\frac{7x+5}{1+y^2}"
print(m)
print(r""+m)
print(r"{}".format(m))
print(repr(m))

一个好的起点是阅读这里的文档。因此,您可以使用转义符"\"作为此处的

>>> m = "\frac{7x+5}{1+y^2}"
>>> print(m)
frac{7x+5}{1+y^2}

或者使用字符串文字,使字符串成为

>>> m = r"frac{7x+5}{1+y^2}"
>>> print(m)
frac{7x+5}{1+y^2}

最新更新