簡體   English   中英

Python輸入/輸出,文件

[英]Python Input/Output, files

我需要編寫一些方法來加載/保存一些類到二進制文件和從二進制文件。 但是我也希望能夠接受來自其他地方的二進制數據,例如二進制字符串。

在c ++中,我可以通過簡單地使我的類方法使用std :: istream和std :: ostream來實現這一點,它可以是文件,字符串流,控制台等等。

python是否有類似的輸入/輸出類,可以表示幾乎任何形式的i / o,或至少文件和內存?

Python的方法是接受一個實現read()或write()的對象。 如果你有一個字符串,你可以使用StringIO實現這一點:

from cStringIO import StringIO

s = "My very long string I want to read like a file"
file_like_string = StringIO(s)
data = file_like_string.read(10)

請記住,Python使用duck-typing:您不必涉及公共基類。 只要你的對象實現了read(),就可以像文件一樣讀取它。

Pickle和cPickle模塊也可能對您有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM