是否可以倒带 python StringIO 内存文件?
Is it possible to rewind a python StringIO in-memory file?
假设我有一个 StringIO 类文件对象,我刚刚从一个字符串创建了它。我将它传递给一个需要文件的函数。此函数从头到尾读取整个文件。我现在想将它传递给另一个需要类文件对象的函数。我可以倒带以便从头开始阅读吗?如果不是,我还可以采用哪些其他方法来实现这一点,这将是最 pythonic 的?
当然:python 中大多数可以倒带的类文件对象已经支持 seek()
>>> import StringIO
>>> f = StringIO.StringIO("hello world")
>>> f.read(6)
'hello '
>>> f.tell()
6
>>> f.seek(0)
>>> f.tell()
0
>>> f.read()
'hello world'
>>>
假设我有一个 StringIO 类文件对象,我刚刚从一个字符串创建了它。我将它传递给一个需要文件的函数。此函数从头到尾读取整个文件。我现在想将它传递给另一个需要类文件对象的函数。我可以倒带以便从头开始阅读吗?如果不是,我还可以采用哪些其他方法来实现这一点,这将是最 pythonic 的?
当然:python 中大多数可以倒带的类文件对象已经支持 seek()
>>> import StringIO
>>> f = StringIO.StringIO("hello world")
>>> f.read(6)
'hello '
>>> f.tell()
6
>>> f.seek(0)
>>> f.tell()
0
>>> f.read()
'hello world'
>>>