Skip to content

Python, how to get the details of a file

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)
→ Download my free Python Handbook!

THE VALLEY OF CODE

THE WEB DEVELOPER's MANUAL

You might be interested in those things I do:

  • Learn to code in THE VALLEY OF CODE, your your web development manual
  • Find a ton of Web Development projects to learn modern tech stacks in practice in THE VALLEY OF CODE PRO
  • I wrote 16 books for beginner software developers, DOWNLOAD THEM NOW
  • Every year I organize a hands-on cohort course coding BOOTCAMP to teach you how to build a complex, modern Web Application in practice (next edition February-March-April-May 2024)
  • Learn how to start a solopreneur business on the Internet with SOLO LAB (next edition in 2024)
  • Find me on X

Related posts that talk about python: