Tengo una carpeta en Windows 7 que contiene varios archivos .txt. ¿Cómo se podría obtener cada archivo en dicho directorio como una lista?Obtener cada archivo en un directorio, Python
12
A
Respuesta
13
Puede utilizar os.listdir(".")
para listar el contenido del directorio actual (""):
for name in os.listdir("."):
if name.endswith(".txt"):
print(name)
Si desea toda la lista como una lista de Python, utilice una lista comprensión:
a = [name for name in os.listdir(".") if name.endswith(".txt")]
6
import os
import glob
os.chdir('c:/mydir')
files = glob.glob('*.txt')
2
import fnmatch
import os
return [file for file in os.listdir('.') if fnmatch.fnmatch(file, '*.txt')]
+0
no se devuelve solo utilizado en una función? – kurumi
0
Si sólo necesita el directorio actual , usa os.listdir.
>>> os.listdir('.') # get the files/directories
>>> [os.path.abspath(x) for x in os.listdir('.')] # gets the absolute paths
>>> [x for x in os.listdir('.') if os.path.isfile(x)] # only files
>>> [x for x in os.listdir('.') if x.endswith('.txt')] # files ending in .txt only
También puede utilizar os.walk si usted necesita para obtener de forma recursiva el contenido de un directorio. Consulte la documentación de python para os.walk.
Cuestiones relacionadas
- 1. Bz2 cada archivo en un directorio
- 2. Python: ¿Cómo obtener archivos en un archivo sin el directorio?
- 3. ¿Cómo obtener el directorio de un archivo argparse en Python?
- 4. Modifique la secuencia de comandos python para que se ejecute en cada archivo en un directorio
- 5. Código de bucle para cada archivo en un directorio
- 6. Iterar a través de cada archivo en un directorio
- 7. almacena cada clase en un archivo por separado de python
- 8. ¿Cómo puedo contar un archivo desde el directorio en Python?
- 9. Obtener el directorio de un archivo de script bash en
- 10. Cómo hacer varias cosas a cada archivo en un directorio con un archivo por lotes
- 11. de ejecución para cada archivo en el directorio
- 12. Ejecutar comando para cada archivo en el directorio actual
- 13. cómo dar salida a cada línea en un archivo python
- 14. Buscar un archivo en python
- 15. cómo comprobar si un archivo es un directorio o un archivo normal en python?
- 16. Archivo o directorio de exploración Diálogo en Python
- 17. Cómo hacer algo a cada archivo en un directorio con un script por lotes
- 18. La posibilidad más rápida de enumerar un directorio y obtener las direcciones URL de cada archivo en Java
- 19. En python, crea un archivo temporal en el mismo directorio que otro archivo?
- 20. Encontrar el archivo más antiguo (recursivamente) en un directorio
- 21. Cómo obtener/establecer la ruta del directorio lógico en python
- 22. ¿Cómo obtener la ruta completa del directorio del archivo actual en Python?
- 23. Ejecutar todos los archivos Python en un directorio
- 24. Obtener tamaño de archivo en Python?
- 25. ¿Cómo hacer algo con cada archivo en un directorio usando bash?
- 26. ¿Cómo encontrar el archivo en cada directorio con el número más alto como nombre de archivo?
- 27. Obtener directorio MakeFile
- 28. ¿Cómo distingue un archivo de un directorio en Perl?
- 29. ¿Cómo procesar cada segundo archivo en bash?
- 30. IOS - Obtener suma de tamaño de archivo en el directorio
¿Por qué os.chdir? Considere 'glob.glob (r'c: \ mydir \ *. Txt ')' –
@John Machin: es absolutamente cierto, esa es otra forma de hacerlo. –
También es una forma de hacerlo sin el efecto secundario innecesario y no solicitado de cambiar [uno de] el director de trabajo actual [y | ies]. –