当我打印列表元素时,输出很奇怪

时间:2015-11-03 04:21:21

标签: python python-2.7

#-*- coding:utf-8 -*-
l = ['cd\xd9>+O\x17 \xafbQ\x85\x86\xaaPo\xd8m',   'cd\xc3k\x9b\x1d\x08\x84MXr0!\xd1\xec\x86\xab\x01', 'cw\x1c\x9e\x08\x05`\x8f\x9dfd\xd0\xbfS7\x9dZ\x8f']
print l[0]

,输出

enter image description here

为什么输出这么奇怪?
我希望当我打印l[0]时,我可以看到'cd\xd9>+O\x17 \xafbQ\x85\x86\xaaPo\xd8m',我该怎么办?

2 个答案:

答案 0 :(得分:1)

\替换为\\,如图所示

l = ['cd\\xd9>+O\\0x17 \\xafbQ\\x85\\x86\\xaaPo\\xd8m',   'cd\\xc3k\\x9b\\x1d\
\x08\\x84MXr0!\\xd1\\xec\\x86\\xab\\x01', 'cw\\x1c\\x9e\\x08\\x05`\\x8f\\x9dfd\\
xd0\\xbfS7\\x9dZ\\x8f']

print l[0]
cd\xd9>+O\x17 \xafbQ\x85\x86\xaaPo\xd8m

答案 1 :(得分:0)

\x**对应于不可打印的ASCII字符,但根据您的终端设置,它可能会尝试打印它,这就是为什么你会收到乱码。