Python, how to get the details of a file

🆕 🔜 Check this out if you dream of running a solo Internet business 🏖️

Given the path to a file, you can get more information about it using several method provided by the os module:

  • os.path.getsize() returns the size of the file
  • os.path.getmtime() returns the file last modified date
  • os.path.getctime() returns the file creation date (equals to last modified date in Unix systems like macOS)

Here is an example:

import os

filename = '/Users/flavio/test.txt'

print(os.path.getsize(filename))
print(os.path.getmtime(filename))
print(os.path.getctime(filename))

os.stat() returns all the information you need in a concise way:

import os

filename = '/Users/flavio/test.txt'

print(os.stat(filename))

It returns a os.stat_result object:

os.stat_result(st_mode=33252, st_ino=34409711, st_dev=16777224, st_nlink=1, st_uid=501, st_gid=20, st_size=189, st_atime=1605428774, st_mtime=1605428773, st_ctime=1605428773)

We have a lot of information here, including:

  • st_mode the file type and permissions
  • st_ino the inode number
  • st_dev the device id
  • st_uid the file owner id
  • st_gid the file group id
  • st_size the file size

and you can reach for individual properties:

import os

filename = '/Users/flavio/test.txt'

stats = os.stat(filename)

print(stats.st_size)
print(stats.st_mtime)