Python 使用struct编写和读取标题

Python 使用struct编写和读取标题,python,struct,Python,Struct,我有一个文件头,我正在阅读和计划写作,其中包含有关内容的信息;版本信息和其他字符串值 写入文件并不太困难,似乎非常简单: outfile.write(struct.pack('<s', "myapp-0.0.1")) 我如何修复此错误以及失败的具体原因是什么 写入文件并不太困难,似乎非常简单: outfile.write(struct.pack('<s', "myapp-0.0.1")) 不像你想的那么直截了当。尝试查看文件中的内容,或只是打印您正在编写的内容: >>

我有一个文件头,我正在阅读和计划写作,其中包含有关内容的信息;版本信息和其他字符串值

写入文件并不太困难,似乎非常简单:

outfile.write(struct.pack('<s', "myapp-0.0.1"))
我如何修复此错误以及失败的具体原因是什么

写入文件并不太困难,似乎非常简单:

outfile.write(struct.pack('<s', "myapp-0.0.1"))
不像你想的那么直截了当。尝试查看文件中的内容,或只是打印您正在编写的内容:

>>> struct.pack('<s', 'myapp-0.0.1')
'm'

>>>struct.pack('我认为这里的问题是数据类型,应该给出字符串的长度:
'@askewchan:差不多。但是计数在格式类型之前,字符串有11个字符长……而且,如果您实际上只是在编写它,那么不要使用struct,只需对文件对象使用
.write()
(如果需要一些定界,可能会添加一个尾随NUL)我正在向标题中写入多个字段,其中一些是字符串,一些是整数,这就是我首先使用struct的原因。我应该为每种字符串类型选择大小吗?@JonClements:看看完整的问题,我认为尾随换行符可能与尾随NUL一样好,甚至更简单…
>>> struct.pack('<s', 'myapp-0.0.1')
'm'