How do I list all files of a directory?


Question

How can I list all files of a directory in Python and add them to a list?

1
3474
10/22/2017 2:35:13 AM

os.listdir() will get you everything that's in a directory - files and directories.

If you want just files, you could either filter this down using os.path:

from os import listdir
from os.path import isfile, join
onlyfiles = [f for f in listdir(mypath) if isfile(join(mypath, f))]

or you could use os.walk() which will yield two lists for each directory it visits - splitting into files and dirs for you. If you only want the top directory you can just break the first time it yields

from os import walk

f = []
for (dirpath, dirnames, filenames) in walk(mypath):
    f.extend(filenames)
    break
3581
6/5/2019 3:10:59 AM

Licensed under: CC-BY-SA with attribution
Not affiliated with: Stack Overflow
Icon