实际上我想到了三种确定文件大小的方法:
- 打开读取,用len()得到字符串的大小
- 使用 os.stat 并通过 st_size 获取它 -> 什么应该是“正确”的方式,因为它由底层操作系统处理
- os.path.getsize 和上面一样
那么确定文件大小的实际正确方法是什么?最糟糕的做法是什么? 或者它根本不重要,因为到头来都是一样的?
(我可以想象第一种方法对非常大的文件有问题,而其他两种则没有)
请您参考如下方法:
如果您无论如何都不需要文件的内容,那么第一种方法将是一种浪费。您的其他两个选项中的任何一个都可以。 os.path.getsize() 使用 os.stat()
来自通用路径.py
def getsize(filename):
"""Return the size of a file, reported by os.stat()."""
return os.stat(filename).st_size
编辑:
如果不是很明显,os.path.getsize() 来自 genericpath.py。
>>> os.path.getsize.__code__
<code object getsize at 0x1d457b0, file "/usr/lib/python2.7/genericpath.py", line 47>
