Python 打印混乱
当我尝试打印“\20%”时,我是python新手 为什么外壳打印“\x10%”也就是说,它正在显示Python 打印混乱,python,python-2.7,Python,Python 2.7,当我尝试打印“\20%”时,我是python新手 为什么外壳打印“\x10%”也就是说,它正在显示 '\x10%' 同样的情况也发生在join中 >>>l = ['test','case'] >>>"\20%".join(l) 它表明 'test\x10%case' 我使用的是python 2.7.3'\20'是一个八进制文字,与chr(2*8+0)==chr(16)相同 pythonshell默认显示的不是打印输出,而是给定值的repr表示,即十六进制
'\x10%'
同样的情况也发生在join中
>>>l = ['test','case']
>>>"\20%".join(l)
它表明
'test\x10%case'
我使用的是python 2.7.3
'\20'
是一个八进制文字,与chr(2*8+0)==chr(16)
相同
pythonshell默认显示的不是打印输出,而是给定值的repr
表示,即十六进制'\x10'
如果需要字符串\20%
,则必须转义反斜杠('\\20%'
)或使用(r'\20%'
)。两者都将显示为
>>> r'\20%'
'\\20%'
\20
是一个转义序列,它引用十进制值为16的DLE
ASCII字符(20
八进制,10
十六进制)。这种字符通过字符串的repr
函数打印为\x10
十六进制转义
要指定文字\20
,请将反斜杠(“\\20”
)加倍或使用原始字符串(r“\20”
)。两次打印“\20%”
如果您直接打印:
>>> print '\20%'
% # some symbol not correctly display on this page
并使用r
>>> print r'\20%'
\20%
>>> r'\20%' # what r do.
'\\20%'
>>> print '\\20%'
\20%
>>>
不久前,我对字符串也有同样的疑问,我问,您可能会发现代码应该是什么,以便在我创建字符串时将字符串连接起来expected@perpetual我不确定您想要什么,但很可能是
“\\20%”。join(l)
我希望输出为“test\20%case”,但当我执行“\\20%”时。join(l)它显示“test\\20%case”@performant:您在字符串的repr
中看到了额外的反斜杠,但如果您打印它或将它写入文件,您将只看到一个。@performal-Welcom-performant…:)
>>> print r'\20%'
\20%
>>> r'\20%' # what r do.
'\\20%'
>>> print '\\20%'
\20%
>>>