Python Check if File Exists

In Python, it is important to check whether a file exists before performing any file-related operations such as reading, writing, or deleting. This helps to avoid errors and handle exceptional cases. Let's explore different methods to check if a file exists in Python.

Using the os.path module

The os.path module provides functions for working with file and directory paths. We can use the os.path.exists() function to check if a file exists.

Example

main.py
test.txt
import os
file_path = './test.txt'
if os.path.exists(file_path):
print("File exists")
else:
print("File does not exist")

In this code, we provide the file path to the os.path.exists() function, which returns True if the file exists, and False otherwise.

Using the pathlib module

The pathlib module provides an object-oriented approach for working with file paths. We can use the Path class and its exists() method to check if a file exists.

Example

from pathlib import Path

file_path = Path('./test.txt')

if file_path.exists():
    print("File exists")
else:
    print("File does not exist")

In this code snippet, we create a Path object representing the file path and then use the exists() method to check if the file exists or not.

Using the os.stat module

The os module in Python provides various functions for interacting with the operating system. We can use the os.stat() function to check if a file exists.

Example

main.py
test.txt
import os
file_path = './test.txt'
try:
os.stat(file_path)
print("File exists")
except Exception:
print("File does not exist")

In this code snippet, we use the os.stat() function on the file path. If the file exists, the function call succeeds, and we print "File exists". Otherwise, if the FileNotFoundError exception is raised, we print "File does not exist".

Using the try-except block

Another approach to check if a file exists is by using a try-except block with file-related operations. For example, opening the file in read mode and catching the FileNotFoundError exception.

Example

main.py
test.txt
file_path = './testjt.txt'
try:
with open(file_path, 'r'):
print("File exists")
except Exception:
print("File does not exist")

In this code snippet, we attempt to open the file in read mode using a with statement. If the file exists, it is successfully opened, and we print "File exists". Otherwise, if the FileNotFoundError exception is raised, we print "File does not exist".

Conclusion

We explored various methods to check if a file exists in Python. We discussed using the os.path module, the pathlib module, the os module, and the try-except block. By verifying the existence of a file before performing any operations on it, you can ensure smooth execution and avoid unexpected errors.

Free Resources

Copyright ©2026 Educative, Inc. All rights reserved