首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >python中的二进制文件IO,从哪里开始?

python中的二进制文件IO,从哪里开始?
EN

Stack Overflow用户
提问于 2009-06-09 00:25:36
回答 3查看 12.6K关注 0票数 11

作为一个自学成才的python爱好者,我该如何学习使用标准格式导入和导出二进制文件呢?

我想实现一个脚本,将ePub电子书(XHTML + CSS压缩)并将其转换为mobipocket (Palmdoc)格式,以便允许Amazon Kindle阅读(作为我正在进行的一个更大项目的一部分)。

已经有一个很棒的开源项目来管理电子书图书馆:Calibre。我想试着把它作为一种学习/自学练习来实现。我开始看他们的python source code,并意识到我不知道发生了什么。当然,在任何事情上自学的最大危险是不知道你不知道的东西。

在这种情况下,我知道我不太了解这些二进制文件以及如何在python代码中使用它们(struct?)。但我想我可能缺少了很多关于二进制文件的一般知识,我想要一些帮助来理解如何使用它们。mobi/palmdoc标头的Here is a detailed overview。谢谢!

编辑:毫无疑问,很好的观点!关于如何获得处理二进制文件的基本知识,您有什么建议吗?特定于Python的将是有帮助的,但其他方法也可能有用。

汤姆:作为问题编辑,增加了介绍/更好的标题

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-06-09 02:19:38

您可能应该从struct模块开始,正如您在问题中指出的那样,当然,以二进制文件的形式打开文件。

基本上,您只需从文件的开头开始,一块一块地将其拆分。这是一个麻烦,但不是一个大问题。如果文件被压缩或加密,事情会变得更加困难。如果你从一个你知道其内容的文件开始,这是很有帮助的,这样你就不会一直在猜测。

试一试,也许你会提出更具体的问题。

票数 10
EN

Stack Overflow用户

发布于 2009-06-09 14:08:27

如果你想构造和分析二进制文件,struct模块将为你提供基本的工具,但它不是很友好,特别是如果你想要查看不是整数字节的东西。

有一些模块可以提供帮助,比如BitVectorbitarraybitstring。(我喜欢bitstring,但它是我写的,所以可能有偏见)。

对于解析二进制格式,hachoir模块非常好,但我怀疑它的级别太高,无法满足您当前的需求。

票数 2
EN

Stack Overflow用户

发布于 2009-06-09 13:50:13

要自学处理二进制文件的python工具,请参阅this will get you going。也很有趣。使用二进制文件,拉链,图像...还有很多。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/967652

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档