Python在打印时添加\

时间:2016-10-31 18:30:25

标签: python

在翻译中,当我写代码时

"it's 42\""

进行python显示

'it's 42"'

正在显示

'it\'s 42"'

相反。现在,我想了解为什么,然后再解决这个问题。

3 个答案:

答案 0 :(得分:1)

你试过print("it's 42\"")吗?如果您正在做

>>>"it's 42\""
'it\'s 42"

然后你实际上并没有打印字符串,只显示它的值。

答案 1 :(得分:1)

我将它缩小,因为如果你在字符串中使用' ,为了显示它,使用" 的python框架字符串:

>> "it's 42"
"it's 42"

现在如果在字符串中使用" ,使用' 的python框架字符串:

>> "\"it s 42\""
'"it s 42"'

但是如果你在同一时间使用2 python自动逃逸,其中一个不会混淆那个框架链:

>> "it's 42\""
'it\'s 42"'

答案 2 :(得分:0)

当你输入shell时:

"it's 42\""

它显示根据你写的内容创建的字符串变量,python 默认为'使用即可。所以你得到:

'it\'s 42"'

当你想到它时,你写的是完全相同的字符串!你用了#34;"表示字符串并转义额外的",但python在shell中使用'并且在' s。

中逃脱了额外的一个

正确显示字符串,请使用正确读取转义的打印方法。我保证打印你的版本或你的shell返回的版本都会产生你想要的。

在旁注中,您可以使用三引号一起跳过转义:

'''it's 42"'''

需要注意的是,您不能使用三重双引号,因为python会认为字符串的结尾是字符串外壳的一部分。