计算内容的大小

时间:2012-11-12 10:25:53

标签: python python-3.x

以下是代码段。我有一个文件。

f = open(self.reportSavePath,'w')
self.test = '';
for file in file_sorted:
    f.write(str(os.path.getmtime(file)) + "|" + file + "\r\n")
    self.test = self.test + str(os.path.getmtime(file)) + "|" + file + "\r\n"
f.close()

print("Size:",os.path.getsize(self.reportSavePath)) #Without opening file
print("Calculated size:",len(self.test.encode()))     #After reading the contents

我的问题是,为什么最后两行给出不同的输出?他们应该不一样吗?

如果有原因,我如何修改评论#Without opening file的行以使用评论为#After reading the contents的行匹配输出?

1 个答案:

答案 0 :(得分:1)

你正在比较苹果和橘子。

os.path.getsizeof返回文件大小。 len(some_string)以字符返回字符串的长度,而不考虑编码,这会影响天真的字节数。