我想知道如何在以十六进制格式写入文件的同时用零填充一个数字。我知道用Python编写十六进制文件的唯一方法是使用chr()。在
paddednumbers = int(1)
with open('pads', 'w+') as source_file:
with open('pads', 'wb') as dest_file:
dest_file.write(chr(paddednumbers))
这写它没有填充,因为我显然没有提供它,这是我的问题出现的时候。在
因为chr()希望我提供int()形式的内容,而zfill喜欢使用int()以外的任何格式,所以我的处境很糟糕。在
我是这样设置zfill的:
^{pr2}$当然,如果我们仍然可以在这个文件中写上chr()的数字。在
有什么解决办法?是否有其他模块/功能可以使用,或者我缺少什么?在
问题的答案可能在于更好地理解unicode和字符编码。在
This article is a must read对于任何试图理解由StackOverflow创始人之一Joel Spolsky编写的unicode和编码的程序员来说
所有文件都是以最低级别的二进制文件编写的。当你说你想写“hex”到一个文件,我猜你的意思是你想把你的ASCII字符串以某种格式编码,当你把它打印成一个字节串时,它看起来像十六进制。在
您可以将编码的数据写入文件。在
^{pr2}$然后读回来:
相关问题 更多 >
编程相关推荐