Python变量和文件

时间:2012-04-28 19:12:41

标签: python file variables

我有什么方法可以将文件视为变量? 作为示例,当调用PIL图像模块保存函数时:Image.save("foo.jpg")我希望所有数据不保存在硬盘上,而是引入变量{{1}这样当调用a时,它应该返回文件内容的内容。

2 个答案:

答案 0 :(得分:8)

您可以使用BytesIO类将PIL图像保存为字节流。

>>> from PIL import Image
>>> im = Image.open('ball.png')
>>> from io import BytesIO
>>> buffer = BytesIO()
>>> im.save(buffer, format='png')
>>> buffer.getvalue()
'\x89PNG\r\n\x1a\n\x00\ ... 

它可能值得阅读整个io module page,它很短,很多很好的信息,包含chioka指出的StringIO。

答案 1 :(得分:7)

当然,请查看StringIO模块。它为字符串提供了类似文件的接口。

http://docs.python.org/library/stringio.html

StringIO - File-like objects that read from or write to a string buffer.