您正在将原始字符串文字
r''与字符串表示形式混淆。有一个很大的不同。
repr()并且
r''是 不 一样的东西。
r''原始字符串文字会像普通的字符串文字一样产生一个字符串,只是它如何处理转义码。产生的结果仍然是python字符串。您可以使用原始字符串文字或普通字符串文字生成相同的字符串:
>>> r'String with n escape ignored''String with \n escape ignored'>>> 'String with \n escape ignored''String with \n escape ignored'
当不使用
r''原始字符串文字时,我必须将斜杠加倍以使其转义,否则它将被解释为换行符。使用
r''语法时,我不必转义它,因为它根本不会解释转义码
n。的
输出 ,所得到的Python字符串 值 ,是完全一样的:
>>> r'String with n escape ignored' == 'String with \n escape ignored'True
解释器正在
repr()将这些值回传给我们。python值的 表示形式 产生:
>>> print 'String'String>>> print repr('String')'String'>>> 'String''String'>>> repr('String')"'String'"注意
repr()结果如何包括引号。当我们呼应只是
repr()一个字符串,结果是 自己 一个字符串,所以它有 2
套引号。其他
"引号标注的结果的开始和结束
repr(),并包含 内 是蟒蛇串的字符串表示
String。
因此
r'', 产生 python字符串的语法
repr()是一种产生代表python值的字符串的方法。
repr()也适用于其他python值:
>>> print repr(1)1>>> repr(1)'1'
该
1整数被表示为一个字符串
'1'(字符
1在字符串)。



