Buscar archivos en Python puede ser un desafío cuando la ubicación del archivo varía entre diferentes sistemas. Afortunadamente, Python proporciona el módulo os.walk que le permite recorrer directorios y localizar archivos sin esfuerzo.
os.walk para búsqueda de archivos
os.walk crea un generador objeto que itera sobre un directorio y sus subdirectorios, produciendo tres tuplas para cada iteración:
Encontrar un solo archivo
Para buscar la primera aparición de un archivo específico, simplemente itere sobre las tuplas obtenidas y verifique si el nombre del archivo está en la lista de archivos:
import os
def find(name, path):
for root, dirs, files in os.walk(path):
if name in files:
return os.path.join(root, name)
Encontrar todas las apariciones de un archivo
Para encontrar todas las apariciones de un archivo, cree una lista para almacenar las coincidencias :
def find_all(name, path):
result = []
for root, dirs, files in os.walk(path):
if name in files:
result.append(os.path.join(root, name))
return result
Patrones de archivos coincidentes
Para buscar archivos que coincidan con un patrón, use el módulo fnmatch:
import os, fnmatch
def find(pattern, path):
result = []
for root, dirs, files in os.walk(path):
for name in files:
if fnmatch.fnmatch(name, pattern):
result.append(os.path.join(root, name))
return result
find('*.txt', '/path/to/dir')
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3