创建类似文件的自定义对象的python建议?
你好,我想为我们公司内部使用的一种二进制格式实现一个自定义的文件类对象(我不想详细说明,因为我不确定是否可以)。我希望用更符合Python风格的方式来做这件事,因为目前我们有两个函数,分别是读取和写入(每个函数大约有4000行代码),它们完成所有的工作。不过我们需要更多的控制和灵活性,所以我才想重写这些代码。
我查看了Python的文档,里面提到我需要实现哪些方法,但没有提到像iter()这样的东西。
基本上,我想做的事情是这样的:
output_file_objs = [
open("blah.txt", "w")
open("blah142.txt", "wb")
my_lib.open("internal_file.something", "wb", ignore_something=True)
]
data_to_write = <data>
for f in output_file_objs:
f.write(data_to_write)
这样我就可以把它和其他的混合在一起,基本上实现一种透明度。我会添加自定义的方法,这没问题。
有没有什么好的参考资料,关于如何编写自己的自定义文件类对象?比如说,有没有什么限制或者特殊的方法(比如iter)我应该实现的?
或者在Python标准库中有没有好的例子可以参考?