[英]Python writing hex to a file
我正在使用Python 3,但我希望能够将十六进制写入这样的文件,但我无法使其正常工作。 这给我一个TypeError,如果对其进行编码,则输出到文件的信息不正确。
junk = '\x90' * 5
junk += '\xcc' * 5
fo = open("foo.list", "wb")
fo.write(junk)
fo.close()
这给了我一个type error, str doesn't support the buffer interface
,如果我这样做的话
junk = '01BDF23A'
junk += '90' * 5
junk += 'cc' * 5
fo = open("foo3.m3u", "wb")
fo.write(binascii.unhexlify(junk))
fo.close()
它有效,但我想将它们定义为十六进制(\\ x90),有什么想法吗?
在此先感谢您的帮助!
在Python 3中,如果尝试write
str
,则必须显式指定编码。 您尝试编写的是字节文本(请参阅python 2至3指南 ),因此将代码更改为实际使用字节文本
junk = b'\x90' * 5
junk += b'\xcc' * 5
fo.write(junk)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.