La dependencia de Python de los archivos externos es un aspecto crucial, es aconsejable prestar atención a los archivos base / fuente antes de ejecutar cualquier código. Antes de ejecutar un programa en particular, debe asegurarse de que sus archivos de origen existan en la ubicación especificada.
Todos los desarrolladores comprenden la necesidad de crear códigos alternativos, que pueden evitar que un programa falle en caso de que no se cumpla una condición. En Python, hay varias formas de comprobar si existe un archivo; Estos son los métodos principales que debe conocer.
1. Prueba y excepto declaraciones
los prueba y la declaración de excepción comprueba un comando y produce una salida. En el siguiente código, el tratar declaración intentará abrir un archivo (testfile.txt). Si el procesador de Python puede localizar el archivo, lo abrirá e imprimirá el resultado. El archivo está abierto y disponible para su uso.
tratar:
f = abierto ('archivo de prueba.txt')
imprimir ("El archivo está disponible para su uso")
f.close ()
excepto IOError:
print ('No se puede acceder al archivo')
Si encuentra un error, imprimirá el resultado. El archivo no es accesible. Una vez que se compila y ejecuta el código completo, cerrará el archivo abierto si se abrió.
La dependencia de Python de los archivos externos es un aspecto crucial, y debe prestar atención a los archivos base / fuente antes de ejecutar cualquier código.
Antes de ejecutar un programa en particular, asegúrese de que sus archivos de origen existan en la ubicación específica.
2. Os.path.isfile (ruta)
Python tiene un sistema operativo de módulo incorporado al que se puede recurrir para interactuar con los archivos, carpetas y directorios subyacentes. Python os.path.isfile () El método se puede utilizar para comprobar un directorio y si existe un archivo específico.
El primer paso es importar la función incorporada usando el importar ruta de sistema operativo Biblioteca. El siguiente comando verifica si el archivo existe en la ubicación específica.
importar ruta de sistema operativo
os.path.isfile (r "C: \ Users \ Wini Bhalla \ Desktop \ Python test file.txt")
La salida vuelve Cierto, ya que el archivo existe en la ubicación específica. Si el archivo no existe, Python regresará Falso.
3. Os.path.exists (ruta)
Por motivos similares, el importar sistema operativo La declaración de la biblioteca se puede utilizar para verificar si el directorio existe en su sistema.
La sintaxis es bastante simple:
Importar ruta de sistema operativo
os.path.exists (r "C: \ Users \ Wini Bhalla \ Desktop \ test")
Al igual que en el paso anterior, si el directorio / carpeta se encuentra en la ruta del sistema especificada, Python devuelve Cierto, y posteriormente, Falso, si no se encuentra el directorio / carpeta.
Relacionado: ¿Aprendiendo Python? Aquí se explica cómo copiar un archivo
4. Os. Sendero. Isdir (camino)
Al igual que os.path.isfile y os.path.exists (), os.path.isdir () es una subfunción de la biblioteca del sistema operativo. La única diferencia aquí es que este comando solo funciona para directorios. Como era de esperar, el uso de esta sintaxis devuelve un valor booleano basado en la existencia de directorios.
Por ejemplo:
importar sistema operativo
os.path.isdir (r "C: \ Users \ Wini Bhalla \ Desktop \ OS")
La salida es Cierto, ya que la carpeta / directorio existe en la ruta especificada.
importar sistema operativo
os.path.isdir (r "C: \ Users \ Wini Bhalla \ Desktop \ testdirectory")
La salida es Falso, ya que la carpeta / directorio no existe en la ruta especificada.
5. Pathlib.path.exists ()
Python 3.4 y versiones superiores ofrecen la Pathlib módulo, que se puede importar utilizando el importar función. Pathlib captura las funcionalidades necesarias en un solo lugar y las pone a disposición a través de varios métodos para usar con el objeto de ruta.
Para usar Pathlib:
importar pathlib
archivo = pathlib. Ruta (r "C: \ Users \ Wini Bhalla \ Desktop \ Python test file.txt")
si archivo.existe ():
imprimir ("El archivo existe")
demás:
imprimir ("El archivo no existe")
Según la existencia del archivo, la salida mostrará si el archivo existe o no en la ruta especificada. Idealmente, el código en el impresión La declaración se puede cambiar, según los requisitos de su programa.
6. Os.listdir (ruta)
los listdir El método en Python devuelve una lista de todos los archivos en un directorio específico, según lo especificado por el usuario. Sin embargo, este método no devolverá ningún archivo existente en subcarpetas.
los listdir El método solo acepta un parámetro, la ruta del archivo. Idealmente, la ruta del archivo serán los nombres de archivo y carpeta que le gustaría recuperar.
La sintaxis básica incluye:
os.listdir (ruta)
En el siguiente ejemplo, puede crear un bucle para revisar todos los archivos enumerados en el directorio y luego verificar la existencia del archivo especificado declarado con el si declaración.
importar sistema operativo
ruta = r'C: \ Users \ Wini Bhalla \ Desktop '
files = os.listdir (ruta)
imprimir (archivos)
Este código imprimirá la lista de archivos disponibles en el directorio actual.
importar sistema operativo
ruta = r'C: \ Users \ Wini Bhalla \ Desktop 'archivos = os.listdir (ruta)
para f en archivos:
si f == "test.txt":
imprimir ("El archivo existe")
demás:
imprimir ("El archivo no existe")
Más adelante, cuando se ejecuta el bucle, el listdir función junto con el si La lógica de la declaración recorrerá la lista de archivos e imprimirá los resultados, dependiendo de las condiciones pasadas dentro del impresión declaración.
Relacionado: Usar bucles con listas en Python
7. Módulo Glob
los glob El módulo hace coincidir todos los nombres de ruta con los parámetros especificados y, de manera sucinta, le permite acceder al sistema de archivos. Dado que glob se usa para la coincidencia de patrones, puede usarlo para verificar el estado de un archivo.
Hay dos referencias de la ruta:
- Camino absoluto: Use esto cuando desee buscar un archivo en un directorio diferente.
- Camino relativo: Use esto cuando quiere buscar un archivo en el directorio actual.
Si se encuentra el archivo, el código volverá Cierto, de lo contrario volverá Falso.
Un ejemplo del uso de Glob:
import glob
si glob.glob (r "C: \ Users \ Wini Bhalla \ Desktop \ test.txt"):
imprimir ("Archivo existente")
demás:
imprimir ("El archivo no existe")
La salida de este código imprimirá el resultado, si se encuentra el archivo.
8. Subproceso
El comando de prueba en el módulo de subproceso es una forma eficiente de probar la existencia de archivos y directorios. Los comandos de prueba solo funcionan en máquinas basadas en Unix y no en máquinas con sistema operativo Windows.
Puede utilizar los siguientes comandos según sus necesidades:
- prueba -e: Verifica la existencia de un camino
- prueba -f: Verificar la existencia de un archivo
- prueba-d: Verificar la existencia de una carpeta
Verificación de una ruta con subproceso:
desde la ejecución de la importación de subprocesos
ejecutar (['prueba', '-e', 'testfile.txt']). código de retorno == 0
ejecutar (['prueba', '-e', 'im-not-here.txt']). código de retorno == 0
Este código llamó a la función de prueba seguida de '-mi' para verificar la existencia de un camino. La función muestra Falso para una ruta no válida.
Verificación de un archivo con subproceso:
ejecutar (['prueba', '-f', 'testfile.txt']). código de retorno == 0
ejecutar (['test', '-f', 'testdirectory']). returncode == 0
los '-F' La función prueba la existencia de un archivo y devuelve Falso para un directorio.
Verificación de un directorio con subproceso:
ejecutar (['prueba', '-d', 'testfile.txt']). código de retorno == 0
ejecutar (['test', '-d', 'testdirectory']). returncode == 0
los '-D' La función prueba la existencia de un directorio y devuelve Falso para cualquier consulta de archivo en el comando de prueba.
¿Qué comando utilizará para localizar sus archivos?
Python es un lenguaje relativamente fácil de usar y ofrece muchas opciones a los usuarios finales. Para verificar la existencia de un archivo (s), puede utilizar cualquiera de los procedimientos enumerados anteriormente.
Sin embargo, si eres un principiante, siempre hay formas de aprender Python. Dado que Python es un lenguaje extenso, es mejor dedicar un tiempo a comprender los diferentes matices y su gama de comandos.
Python es extremadamente versátil, con aplicaciones que van desde el desarrollo web hasta el análisis de datos.
Leer siguiente
- Programación
- Pitón
- Consejos de codificación
Wini es un escritor que vive en Delhi y tiene 2 años de experiencia en escritura. Durante sus períodos de redacción, se ha asociado con agencias de marketing digital y empresas técnicas. Ha escrito contenido relacionado con lenguajes de programación, tecnología en la nube, AWS, Machine Learning y mucho más. En su tiempo libre, le gusta pintar, pasar tiempo con su familia y viajar a la montaña, siempre que sea posible.
Suscríbete a nuestro boletín
¡Únase a nuestro boletín de noticias para obtener consejos técnicos, reseñas, libros electrónicos gratuitos y ofertas exclusivas!
Haga clic aquí para suscribirse