我需要知道基于文件对象的文件大小
import csv
import os
with open("test.csv", "rb") as infile:
reader = csv.reader(infile)
print reader
filesize(reader)
def filesize(reader):
os.getsize(reader) #And i need work with reader for more details.so I must need to pass a reader or file object
当我运行这个时,我得到了一个输出
<_csv.reader object at 0x7f5644584980>
从这个文件对象中我如何得到文件的大小?
我检查了此网站,但这些不是CSV属性size of an open file object
编辑:当我使用这两个内置函数时,我遇到了错误
AttributeError:&#39; _csv.reader&#39;对象没有属性&#39;寻找&#39; AttributeError:&#39; _csv.reader&#39;对象没有属性&#39;告诉&#39;
答案 0 :(得分:2)
os.path.getsize
有什么问题?
使用您的代码:
import os
import csv
with open("test.csv", "rb") as infile:
reader = csv.reader(infile)
print os.path.getsize(infile.name)
大小以字节为单位。
答案 1 :(得分:2)
添加这个答案是因为它实际上回答了关于直接使用文件对象的问题:
import csv
import os
with open("test.csv", "rb") as infile:
reader = csv.reader(infile)
print reader
infile.seek(0, os.SEEK_END)
filesize = infile.tell()
答案 2 :(得分:1)
您可以使用os.path.getsize
或os.stats
import os
os.path.getsize('test.csv')
OR
os.stat('test.csv').st_size
返回大小,以字节为单位。