是否可以获取 StringIO 对象的字节大小?或者每当我想要它的大小时我应该把它写到磁盘上? 我搜索了很多但没有成功。有。 sizeof ()但我不认为这就是我想要的。
我正在迭代文件名列表
temp=StringIO()
for idx,filename in enumerate(filenames):
temp.write('something')
if ((temp.__sizeof__()+os.path.getsize(os.path.join(inputf,filenames[idx])))/1048576.0 >= 128.0):
(do something)
答案 0 :(得分:1)
您应该寻求最终并使用tell()
:
temp.write('something')
temp.seek(0, os.SEEK_END)
if ((temp.tell()+...
示例:
from StringIO import StringIO
import os
temp = StringIO()
temp.write("abc€")
temp.seek(0, os.SEEK_END)
print temp.tell() #6