AI Workshop: learn to build apps with AI →
Working with Files: List files in a directory

Join the AI Workshop and learn to build real-world apps with AI. A hands-on, practical program to level up your skills.


To list files in a directory, you can use the listdir() function provided by the os standard library module:

import os

dirname = '/users/Flavio/dev'
files = os.listdir(dirname)

print(files)

To get the full path to a file you can join the path of the folder with the filename, using the os.path.join() function:

import os

dirname = '/users/Flavio/dev'
files = os.listdir(dirname)

temp = map(lambda name: os.path.join(dirname, name), files)

print(list(temp))

To list only the files, or only the directories, you can use os.path.isfile() and os.path.isdir():

import os

dirname = '/users/Flavio/dev'
dirfiles = os.listdir(dirname)

fullpaths = map(lambda name: os.path.join(dirname, name), dirfiles)

dirs = []
files = []

for file in fullpaths:
    if os.path.isdir(file): dirs.append(file)
    if os.path.isfile(file): files.append(file)

print(list(dirs))
print(list(files))

Lessons in this unit:

0: Introduction
1: Check if file or directory exists
2: Create an empty file
3: Create a directory
4: Read the content of a file
5: Write to a file
6: ▶︎ List files in a directory
7: Get the details of a file
8: The with statement