Cómo abrir y cerrar un archivo en Python

Puede surgir una situación en la que uno necesite interactuar con archivos externos con Python . Python proporciona funciones integradas para crear, escribir y leer archivos. 
en este artículo, discutiremos cómo abrir un archivo externo y cerrarlo usando Python.
Abriendo un archivo en python:
Hay dos tipos de archivos que se pueden manejar en Python, archivos de texto normales y archivos binarios (escritos en lenguaje binario, 0s y 1s). Abrir un archivo se refiere a preparar el archivo para leerlo o escribirlo. Esto se puede hacer usando la función open() . Esta función devuelve un objeto de archivo y toma dos argumentos, uno que acepta el nombre del archivo y otro que acepta el modo (Modo de acceso).
Nota:El archivo debe existir en el mismo directorio que el script de Python; de lo contrario, se debe escribir la dirección completa del archivo.
 

Sintaxis: File_object = open(“File_Name”, “Access_Mode”)
Parámetros: 
 

  • File_Name: Es el nombre del archivo que necesita ser abierto. 
     
  • Access_Mode: Los modos de acceso gobiernan el tipo de operaciones posibles en el archivo abierto. La siguiente tabla muestra la lista de todos los modos de acceso disponibles en python: 
     
Operación Sintaxis Descripción
Solo lectura r Abrir archivo de texto solo para lectura.
Lee y escribe r+ Abra el archivo para lectura y escritura.
Escribir solamente w Abra el archivo para escribir.
Escribir y leer w+ Abra el archivo para lectura y escritura. A diferencia de “r+”, no genera un error de E/S si el archivo no existe.
Agregar solo a Abra el archivo para escribir y cree un nuevo archivo si no existe. Todas las adiciones se realizan al final del archivo y no se puede modificar ningún dato existente.
Agregar y leer un+ Abra el archivo para lectura y escritura y cree un nuevo archivo si no existe. Todas las adiciones se realizan al final del archivo y no se puede modificar ningún dato existente.

Ejemplo 1: 
En este ejemplo, abriremos un archivo en modo de solo lectura. El archivo inicial se ve a continuación: 
 

Código: 
 

Python3

# open the file using open() function
file = open("sample.txt")
   
# Reading from file
print(file.read())

Aquí hemos abierto el archivo e impreso su contenido.
Producción: 
 

Hello Geek!
This is a sample text file for the example.

Ejemplo 2: 
en este ejemplo, agregaremos contenido nuevo al archivo existente. Así que el archivo inicial se ve a continuación: 
 

Código: 
 

Python3

# open the file using open() function
file = open("sample.txt", 'a')
   
# Add content in the file
file.write(" This text has been newly appended on the sample file")

Ahora, si abre el archivo, verá el siguiente resultado, 
Salida: 
 

Ejemplo 3: 
En este ejemplo, sobrescribiremos el contenido del archivo de muestra con el siguiente código:
Código: 
 

Python3

# open the file using open() function
file = open("sample.txt", 'w')
   
# Overwrite the file
file.write(" All content has been overwritten !")

El código anterior conduce al siguiente resultado, 
Salida: 
 

Cerrar un archivo en Python:
si observa, no hemos cerrado ninguno de los archivos que operamos en los ejemplos anteriores. Aunque Python cierra automáticamente un archivo si el objeto de referencia del archivo se asigna a otro archivo, es una práctica estándar cerrar un archivo abierto ya que un archivo cerrado reduce el riesgo de ser modificado o leído injustificadamente.
Python tiene un método close() para cerrar un archivo. El método close() se puede llamar más de una vez y si se realiza alguna operación en un archivo cerrado, genera un ValueError. 
El siguiente código muestra un uso simple del método close() para cerrar un archivo abierto.
Ejemplo 1: 
 

Python3

# open the file using open() function
file = open("sample.txt")
   
# Reading from file
print(file.read())
 
# closing the file
file.close()

Ahora, si intentamos realizar cualquier operación en un archivo cerrado como se muestra a continuación, genera un ValueError: 
 

Python3

# open the file using open() function
file = open("sample.txt")
   
# Reading from file
print(file.read())
 
# closing the file
file.close()
 
# Attempt to write in the file
file.write(" Attempt to write on a closed file !")

Producción:
 

ValueError: I/O operation on closed file.

Publicación traducida automáticamente

Artículo escrito por RajuKumar19 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

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