我想在一个流中使用 2 个流指针,并将 2 个指针定位在不同的位置。我如何制作第一个流的副本,以便该副本不反映第一个流的状态,从这个时间点开始?
特别是,我对 io.BytesIO() 类型的流感兴趣
import io
stream1 = open("Input.jpg", "rb")
stream2 = stream1
print('A', stream1.tell(), stream2.tell())
stream1.seek(10)
print('B', stream1.tell(), stream2.tell())
我的目标是查看
A 0 0
B 10 0
然而,我看到
A 0 0
B 10 10
@varela 感谢您的回复。不幸的是,当流没有文件描述符时(如果我们不打开文件可能会发生这种情况),这不能很好地工作。例如,而不是 stream1=open("Input.jpg", "rb")
stream1 = io.BytesIO() image.save(stream1, format='JPEG')
关于如何处理这种情况的任何建议?
谢谢。