繁体   English   中英

创建一个像对象 python 建议这样的自定义文件?

[英]Creating a custom file like object python suggestions?

嗨,我希望为我们在工作中使用的内部二进制格式实现我自己的自定义文件,如对象(我真的不想详细介绍,因为我不知道我是否可以)。 我正在尝试采用更 Pythonic 的做事方式,因为目前我们有两个函数读/写(每个约 4k 行代码)可以做所有事情。 然而,我们需要更多的控制/技巧,因此我重写了这些东西。

我查看了 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标准库中的一个很好的例子吗?

什么构成“类文件”实际上取决于您打算将其用于什么目的; 并非所有方法都需要实现(或有一个健全的实现)。

话虽如此, file迭代器文档正是您想要的。

为什么不在 StringIO 中填充您的数据? 否则,您可以查看文档并实现所有文件之类的方法。 说实话,Python 中没有真正的接口,并且某些功能(如 tell())可能对您的文件没有意义,因此您可以不实施它们。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM