2024-04-20 11:42:50 发布
网友
当我尝试打印“\20%”即
>>>"\20%"
为什么外壳打印'\x10%'也就是说,它正在显示
join也是如此
>>>l = ['test','case'] >>>"\20%".join(l)
它显示了
'test\x10%case'
我使用的是python2.7.3
'\20'是一个八进制文本,与chr(2 * 8 + 0) == chr(16)相同。在
'\20'
chr(2 * 8 + 0) == chr(16)
pythonshell默认显示的是不是print的输出,而是给定值的repr表示,即十六进制'\x10'。在
repr
'\x10'
如果需要字符串\20%,则必须转义反斜杠('\\20%')或使用raw string literal(r'\20%')。两者都将显示为
\20%
'\\20%'
r'\20%'
>>> r'\20%' '\\20%'
\20是一个转义序列,它引用DLEASCII字符,其十进制值为16(20为八进制,10为十六进制)。这样的字符由字符串的repr函数打印为\x10十六进制转义符。在
\20
DLE
20
10
\x10
要指定文本\20,请将反斜杠("\\20")加倍或使用原始字符串(r"\20")。在
"\\20"
r"\20"
两次打印"\20%"
"\20%"
如果直接打印:
>>> print '\20%' % # some symbol not correctly display on this page
并使用r
r
以前我对字符串也有同样的疑问,我问a question,你可能会发现有用的
'\20'
是一个八进制文本,与chr(2 * 8 + 0) == chr(16)
相同。在pythonshell默认显示的是不是print的输出,而是给定值的
repr
表示,即十六进制'\x10'
。在如果需要字符串
\20%
,则必须转义反斜杠('\\20%'
)或使用raw string literal(r'\20%'
)。两者都将显示为\20
是一个转义序列,它引用DLE
ASCII字符,其十进制值为16(20
为八进制,10
为十六进制)。这样的字符由字符串的repr
函数打印为\x10
十六进制转义符。在要指定文本
\20
,请将反斜杠("\\20"
)加倍或使用原始字符串(r"\20"
)。在两次打印
"\20%"
如果直接打印:
并使用
^{pr2}$r
以前我对字符串也有同样的疑问,我问a question,你可能会发现有用的
相关问题 更多 >
编程相关推荐