In Python, there are multiple ways to check if a file or directory exists or not. For example, exists() is a method used for this purpose.
While working with python you may have the situation where first you want to check if a file exists on your system. If exists then open it otherwise create a new file and then open it for writing output.
In this article, we will discuss different ways to check if a file exists in Python or not.
Check if a file exists with Python try-except block
This is one of the easiest ways to check if a file exists on your system or not. This doesn’t require importing a module in Python code. You need to open a file if you want to perform some action on it.
Now see the given Python code –
try: with open('filename.txt') as f: print(f.readlines()) # Write code to do something with opened file except IOError: print("File can't be accessed")
In this example, a simple try-except block is used to open a file and perform operations with it. If the file not found IOError exception will be raised and statements under except block will get executed.
Using with
keyword while opening the file ensures the file is properly closed after the file operation completed.
Check if a file exists in Python using os.path.exists() method
The os.path
module provides some useful functions on pathname. You can quickly check if a file or directory exists on your system by using the path.exists()
method.
You can see the usage of this method in the example below.
import os.path if os.path.exists('filename.txt'): print ("File exist") else: print ("File not found")
This method will return True
if the file or directory passed in the method exists otherwise it will return False
.
Another method in os.path
to check if a file exists or not is isfile()
. If the argument passed to it is a file or symlink to a file this method will return True
otherwise it will return False
.
Using pathlib module to check if a file exists in Python or not
The pathlib
module was first included in Python 3.4 so using this way on an older version of Python will not work. It is an object-oriented interface to the filesystem and provides a more intuitive method to interact with the filesystem.
Now see the example to use it Python code –
from pathlib import Path if Path('filename.txt').is_file(): print ("File exist") else: print ("File not found")
If the argument passed to Path()
is a file or symlink to a file then the is_file()
method will return True
otherwise, it will return False
.
Conclusion
Now you know how to check if a file exists in Python. If you have a query then write us in the comments below.