pythonfile

How do I check file size in Python?


How do I get the size of a file in Python?


Solution

  • You need the st_size property of the object returned by os.stat. You can get it by either using pathlib (Python 3.4+):

    >>> from pathlib import Path
    >>> Path('somefile.txt').stat()
    os.stat_result(st_mode=33188, st_ino=6419862, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=1564, st_atime=1584299303, st_mtime=1584299400, st_ctime=1584299400)
    >>> Path('somefile.txt').stat().st_size
    1564
    

    or using os.stat:

    >>> import os
    >>> os.stat('somefile.txt')
    os.stat_result(st_mode=33188, st_ino=6419862, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=1564, st_atime=1584299303, st_mtime=1584299400, st_ctime=1584299400)
    >>> os.stat('somefile.txt').st_size
    1564
    

    Output is in bytes.