繁体   English   中英

蟒蛇; 结构,如何打包换行符

[英]python; struct, how to pack a newline

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

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

from struct import pack

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

将显示:

b'\n'
b'\n'

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

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

这意味着该行将变为:

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM