Получение размера файла в Python?
Есть ли встроенная функция для получения размера файлового объекта в байтах? Я вижу, что некоторые люди делают что-то вроде этого:
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 у него много вспомогательных функций, поэтому я предполагаю, что есть один встроенный.
Ответы
Ответ 1
Попробуйте взглянуть на http://docs.python.org/library/os.path.html#os.path.getsize
os.path.getsize(path) Возвращает размер, в байтах, пути. Поднимите os.error, если файл не существует или недоступны.
import os
os.path.getsize('C:\\Python27\\Lib\\genericpath.py')
ИЛИ
os.stat('C:\\Python27\\Lib\\genericpath.py').st_size
Ответ 2
os.path.getsize(path)
Возвращает размер, в байтах, пути. Поднять os.error, если файл не существует или недоступен.
Ответ 3
Вы можете использовать os.stat(), который является оболочкой системного вызова stat():
import os
def getSize(filename):
st = os.stat(filename)
return st.st_size
Ответ 4
Попробуйте
os.path.getsize(filename)
Он должен вернуть размер файла, о котором сообщает os.stat().
Ответ 5
Вы можете использовать вызов os.stat(path)
http://docs.python.org/library/os.html#os.stat