Python Check If File or Directory Exists
In this tutorial, we will learn how to determine whether a file (or directory) exists using Python. To check this, we use Built-in library functions.
There are different ways to verify a file or directory exists, using functions as listed below.
os.path.exists()
Using path.exists you can quickly check that a file or directory exists. Here are the steps
Steps 1) Before you run the code, it is important that you import the os.path module.
import os.path
from os import path
Steps 2) Now, use the path.exists() function to check whether a File Exists.
path.exists("Girish.txt")
Steps 3) Here is the complete code
import os.path
from os import path
def main():
print ("file exist:"+str(path.exists('Girish.txt')))
print ("File exists:" + str(path.exists('career.Girish.txt')))
print ("directory exists:" + str(path.exists('myDirectory')))
if __name__== "__main__":
main()
In our case only file Girish.txt is created in the working directory
Output:
File exists: True
File exists: False
directory exists: False
os.path.isfile()
We can use the isfile command to check whether a given input is a file or directory.
import os.path
from os import path
def main():
print ("Is it File?" + str(path.isfile('Girish.txt')))
print ("Is it File?" + str(path.isfile('myDirectory')))
if __name__== "__main__":
main()
Output:
Is it File? True
Is it File? False
os.path.isdir()
If we want to confirm that a given path points to a directory, we can use the os.path.dir() function
import os.path
from os import path
def main():
print ("Is it Directory?" + str(path.isdir('Girish.txt')))
print ("Is it Directory?" + str(path.isdir('myDirectory')))
if __name__== "__main__":
main()
Output:
Is it Directory? False
Is it Directory? True
pathlibPath.exists() For Python 3.4
Python 3.4 and above versions have pathlib Module for handling with file system path. It used object-oriented approach to check if file exist or not.
import pathlib
file = pathlib.Path("Girish.txt")
if file.exists ():
print ("File exist")
else:
print ("File not exist")
Output:
File exist
Complete Code
Here is the complete code
import os
from os import path
def main():
# Print the name of the OS
print(os.name)
#Check for item existence and type
print("Item exists:" + str(path.exists("Girish.txt")))
print("Item is a file: " + str(path.isfile("Girish.txt")))
print("Item is a directory: " + str(path.isdir("Girish.txt")))
if __name__ == "__main__":
main()
Output:
Item exists: True
Item is a file: True
Item is a directory: False
Summary:
- Use path.exists to check whether a File Exists
- Use path.isfile and path.isdir to check whether a path is File or Directory respectively
- In Python 3.4 and above versions use pathlib Module to check a file exists.