是否有一个内建函数,以字节为单位获取文件对象的大小?我看到有些人这样做:

def getSize(fileobject):
    fileobject.seek(0,2) # move the cursor to the end of the file
    size = fileobject.tell()
    return size

file = open('myfile.bin', 'rb')
print getSize(file)

但从我使用Python的经验来看,它有很多帮助函数,所以我猜可能有一个内置的。


当前回答

你可以使用os.stat(path)调用

http://docs.python.org/library/os.html#os.stat

其他回答

os.path.getsize(path)

返回路径的大小,单位为字节。提高操作系统。如果文件不存在或无法访问,则错误。

使用os.path.getsize(path)

返回路径的大小,单位为字节。如果文件不存在或不可访问,则引发OSError。

import os
os.path.getsize('C:\\Python27\\Lib\\genericpath.py')

或者使用os.stat(path).st_size

import os
os.stat('C:\\Python27\\Lib\\genericpath.py').st_size 

或者使用Path(Path).stat()。st_size (Python 3.4+)

from pathlib import Path
Path('C:\\Python27\\Lib\\genericpath.py').stat().st_size

你可以使用os.stat(path)调用

http://docs.python.org/library/os.html#os.stat

Try

os.path.getsize(filename)

它应该返回文件的大小,由os.stat()报告。

你可以使用os.stat()函数,它是系统调用stat()的包装器:

import os

def getSize(filename):
    st = os.stat(filename)
    return st.st_size