蟒蛇; struct,如何打包换行

时间:2015-11-02 14:13:24

标签: python struct

print(pack('c', b'x0a'))
print(pack('c', b'\n'))
print(pack('c', '\n'))

所有导致

struct.error: char format requires a bytes object of length 1
x = pack('s', b'\n')
for i in x: print(i)

导致10,因此可能在正确的轨道上,但我试图让它向我展示x0a

2 个答案:

答案 0 :(得分:2)

这两个版本应该可以正常工作:

from struct import pack

print(pack('c', b'\x0a'))
print(pack('c', b'\n'))

将显示:

b'\n'
b'\n'

答案 1 :(得分:0)

错误很明显,你不能有超过一个字节的字符格式。这意味着,如Michael Foukarakis所述,您需要在此行中向\添加反斜杠字符x0a

print(pack('c', b'x0a'))

这意味着这一行将成为这个:

print(pack('c', b'\x0a'))