Find all files in a directory with extension .txt in Python

usertest picture usertest · Oct 19, 2010 · Viewed 2M times · Source

How can I find all the files in a directory having the extension .txt in python?

Answer

ghostdog74 picture ghostdog74 · Oct 19, 2010

You can use glob:

import glob, os
os.chdir("/mydir")
for file in glob.glob("*.txt"):
    print(file)

or simply os.listdir:

import os
for file in os.listdir("/mydir"):
    if file.endswith(".txt"):
        print(os.path.join("/mydir", file))

or if you want to traverse directory, use os.walk:

import os
for root, dirs, files in os.walk("/mydir"):
    for file in files:
        if file.endswith(".txt"):
             print(os.path.join(root, file))