Comprobar si existe un archivo en Python

Comprobación de la existencia de archivos : Aquí, vamos a aprender cómo comprobar si existe un archivo o no en el lenguaje de programación Python ?

Una capacidad de comprobar si existe el archivo o no, es muy crucial en cualquier aplicación. A menudo, las aplicaciones realizan verificaciones como,

  • Compruebe si existe el archivo antes de añadir / escritura a la misma.
  • Compruebe si existe el archivo antes de leerlo.

El lenguaje de programación Python proporciona múltiples métodos para comprobar si existe o no el archivo . El módulo que proporciona las funciones como ‘OS’, por lo que es importante para class OS, mientras que hay una verificación sobre la existencia del archivo.

os.path.exists ()

-bash-4.2$ ls
python_samples test.txt
-bash-4.2$ python3
Python 3.6.8 (default, Apr 25 2019, 21:02:35)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-36)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> from os import path
>>> print(path.exists('test.txt'))
True
>>> print(path.exists('test1.txt'))
False
>>>

os.path.isfile ()

-bash-4.2$ ls
python_samples test.txt
-bash-4.2$ python3
Python 3.6.8 (default, Apr 25 2019, 21:02:35)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-36)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> print(os.path.isfile('test.txt'))
True
>>> print(os.path.isfile('test1.txt'))
False

Las funciones, se ha demostrado anteriormente también están disponibles en una versión inferior del pitón (< 3). However, python version 3.4 provides a function pathlibPath.exists () que se importa de pathlib módulo import manejo de la ruta del sistema de archivos. se utiliza un enfoque orientado a objetos para verificar si existe el archivo o no. path.exists

-bash-4.2$ ls
python_samples test.txt
-bash-4.2$ python3
Python 3.6.8 (default, Apr 25 2019, 21:02:35)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-36)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import pathlib
>>> test_file = 'test.txt'
#create a file object
>>> file = pathlib.Path(test_file)
>>> if file.exists():
... print("file {} exists".format(test_file))
... else:
... print("file {} does not exists".format(test_file))
...
file test.txt exists

-bash-4.2$ ls
python_samples test.txt
-bash-4.2$ python3
Python 3.6.8 (default, Apr 25 2019, 21:02:35)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-36)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import pathlib
>>> test_file = 'test1.txt'
>>> file = pathlib.Path(test_file)
>>> if file.exists():
... print("file {} exists".format(test_file))
... else:
... print("file {} does not exists".format(test_file))
...
file test1.txt does not exists
>>>

En pocas palabras

  • uso para verificar si existe el archivo dado.
  • uso path.isfile para comprobar si un camino es el archivo.
  • la versión de Python 3.4 y anterior proporciona una pathlib Módulo para verificar la existencia de archivos.

Junto con los métodos antes mencionados, hay otro sencillo Pythonic manera for la comprobación de la existencia del archivo. utilizar el método open () para abrir el archivo.

-bash-4.2$ ls
python_samples test.txt
-bash-4.2$ python3
Python 3.6.8 (default, Apr 25 2019, 21:02:35)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-36)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> try:
... open('text.txt')
... except:
... print("file does not exists")
...
file does not exists

-bash-4.2$ ls
python_samples test.txt
-bash-4.2$ python3
Python 3.6.8 (default, Apr 25 2019, 21:02:35)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-36)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> file_name = 'test.txt'
>>> try:
... with open(file_name) as f:
... print("{} exists".format(file_name))
... except:
... print("{} does not exists".format(file_name))
...
test.txt exists
>>>

_8 2_

Uso de con en el ejemplo anterior, asegura el archivo se cierra después de la operación de archivo.


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *