gpt4 book ai didi

python - 从 StringIO 读取而不重置位置

转载 作者:行者123 更新时间:2023-12-01 02:20:25 25 4
gpt4 key购买 nike

我有一个测试代码,内容如下:

with open('master.log') as f:
print(f.read(8))
print(f.read(8))

这打印为:

>> pi@raspberrypi:~/workspace/Program $ sudo python test.py
>> 12/29/20
>> 17 12:52

如您所见,它有不同的打印品。但是,当我这样做时:

import cStringIO

stream= "1234567890"
print(cStringIO.StringIO(stream).read(8))
print(cStringIO.StringIO(stream).read(8))

当我运行它时,我得到以下输出:

>> pi@raspberrypi:~/workspace/Program $ sudo python test.py
>> 12345678
>> 12345678

在这种情况下,它输出相同的值(导引头不前进)。

我需要让 cStringIO (或类似的解决方案)以与文件相同的方式读取字符串。我的意思是,无需在每次读取时重置位置。

最佳答案

正如 @Michael Butscher 和其他人所回避的那样,您需要创建流的实例。

>>> #import io                                      # python 3
>>> import cStringIO as io # python 2
>>> stream = "1234567890"
>>> f = io.StringIO(stream)
>>> f.read(8)
'12345678'
>>> f.read(8)
'90'

关于python - 从 StringIO 读取而不重置位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48016553/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com