Check if directory contains files using python
Last Updated :
12 Dec, 2022
Finding if a directory is empty or not in Python can be achieved using the listdir() method of the os library. OS module in Python provides functions for interacting with the operating system. This module provides a portable way of using operating system dependent functionality.
Syntax: os.listdir(<directory path>) Returns: A list of files present in the directory, empty list if the directory is empty
Now by calling listdir() method, we can get a list of all files present in the directory. To check the emptiness of the directory we should check the emptiness of the returned list. We have many ways to do that, let us check them one by one.
- By comparing the returned list with a hardcoded empty list An empty list can be written as []. So we can compare the returned list’s equalness with [].
Python3
import os
directoryPath = "D: / Pycharm projects / GeeksforGeeks / Nikhil"
if os.listdir(directoryPath) = = []:
print ("No files found in the directory.")
else :
print ("Some files found in the directory.")
|
Output:
Some files found in the directory.
- By comparing length of the returned list with 0 We can get length of a list by using len() method of Python. If the length of the returned list is equal to zero then the directory is empty otherwise not.
Python3
import os
directoryPath = "D: / Pycharm projects / GeeksforGeeks / Nikhil"
if len (os.listdir(directoryPath)) = = 0 :
print ("No files found in the directory.")
else :
print ("Some files found in the directory.")
|
Output:
Some files found in the directory.
- By comparing the boolean value of the list In the above method, we used explicit comparison of the length of the list. Now we are heading with a more Pythonic way using truth value testing. An empty list is evaluated as False in Python.
Python3
import os
directoryPath = "D: / Pycharm projects / GeeksforGeeks / Nikhil"
if not os.listdir(directoryPath):
print ("No files found in the directory.")
else :
print ("Some files found in the directory.")
|
Output:
Some files found in the directory.
Complete source code:
Python3
import os
def isEmpty(directoryPath):
if os.path.exists(directoryPath):
if len (os.listdir(directoryPath)) = = 0 :
return "No files found in the directory."
else :
return "Some files found in the directory."
else :
return "Directory does not exist !"
directoryPath = "D: / Pycharm projects / GeeksforGeeks / Nikhil"
print ("Valid path:", isEmpty(directoryPath))
directoryPath = "D: / Pycharm projects / GeeksforGeeks / Nikhil / GeeksforGeeks"
print ("Invalid path:", isEmpty(directoryPath))
|
Output:
Valid path: Some files found in the directory.
Invalid path: Directory does not exist !
Share your thoughts in the comments
Please Login to comment...