¿Cómo recorrer todos los archivos en un directorio específico en Python?
1.os.walk
Os.walk() devuelve una tupla que contiene tres elementos: la ruta actual, el nombre de la subcarpeta y la lista de archivos.
& gt& gt& gtImportar sistema operativo
& gt& gt& gtDefinir diversión (ruta):
...Para el directorio raíz en os.walk, Directorios y archivos (ruta):
...Para fn en archivos:
...Imprimir el directorio raíz, fn
... p>
& gt& gt& gtFun(r'C:\TDDOWNLOAD ')
c:\TDDOWNLOADa.txt
c:\TDDOWNLOADb.txt
C :\TDDOWNLOAD\sub1 c.txt
C:\TDDOWNLOAD\sub1 d.txt
& gt& gt& gt
2 .Glob Global
Glob.glob() solo acepta un parámetro, que es tanto una ruta como un patrón coincidente, y el valor de retorno es una lista. Tenga en cuenta que glob.glob() no puede penetrar directamente en las subcarpetas, por lo que debe manejarlo usted mismo:
& gt& gt& gtDefinición divertida (ruta):
...Para glob.glob fn(path+OS . sep+' *):# ' * ' significa hacer coincidir todos los archivos.
...if os.path.isdir( fn ): #Si el resultado es una carpeta.
...fun(fn) #recursión
...else:
...imprimir fn
...
& gt& gt& gtFun(r'C:\TDDOWNLOAD ')
C:\TDDOWNLOAD\a.txt
C:\TDDOWNLOAD\b.
C:\TDDOWNLOAD\sub1\c.txt
C:\TDDOWNLOAD\sub1\d.txt
& gt& gt& gt
* ' es un patrón de coincidencia, lo que significa que coincide con todos los archivos. Sólo entonces se podrán encontrar las subcarpetas para poder explorar el siguiente nivel de archivos de forma recursiva.