簡體   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