Python CLI:打印'一些文字' vs'一些文字'

时间:2015-04-15 14:00:36

标签: python

为什么>>> 'c\\\h'通过python CLI生成'c\\\\h'

>>> print 'c\\\h'会产生c\\h

1 个答案:

答案 0 :(得分:4)

以REPL模式运行的Python解释器打印最后一个语句结果的representation (repr builtin)(它存在而不是None):

>>> 5 + 6
11

对于str个对象,表示形式为string literal,其形式与您的代码相同(除了引号可能不同),因此它包含转义序列:

>>> '\n\t1'
'\n\t1'
>>> print repr('\n\t1')
'\n\t1'
另一方面,

print语句(或函数)打印元素的pretty string-conversion (str builtin),这使得所有转义序列都转换为实际字符:

>>> print '\n\t1'
                           <---- newline
    1                      <---- tab + 1