【发布时间】:2014-06-07 16:45:06
【问题描述】:
buffersize=50000
inflie = open('in.jpg','rb')
outfile = open('out.jpg','wb')
buffer = infile.read(buffersize)
while len(buffer):
outfile.write(buffer)
buffer = infile.read(buffersize)
我正在学习在 python 中读/写二进制文件的基础知识,并理解这段代码。 对于理解此代码的任何帮助,我将不胜感激。 谢谢!
- Q1:50000 的缓冲区大小是否等于 50kb? (in.jpg 大约 150kb)
- Q2:如何从输入文件中读取下一个数据增量(即下一个 50,000 字节的数据)? (前 50,000 个字节在 while 循环之前读取并存储,然后写入输出文件, 接下来的 50,000 个字节如何在范围内没有任何增量的情况下被读取?)
- Q3:len(buffer) 表示缓冲区(文件对象)的大小。这在 while 循环中何时变为 false?
【问题讨论】:
-
您能否阐明第二季度中“范围内的增量”是什么意思?