Working with Files: List files in a directory

To list files in a directory, you can use the listdir() method that is provided by the os built-in 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() method:

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

Join my AI Workshop!

The Web Development BOOTCAMP cohort starts in February 2026