Abra un archivo en Python usando la instrucción 'con'

Abra un archivo en Python usando la instrucción 'con'
Cuando requiere almacenar algunos datos de forma permanente para el propósito de programación, se usa un archivo para hacer esta tarea. En general, el abierto() La función se usa en Python para abrir un archivo para leer y escribir. El abierto() El método devuelve un objeto para que funcione con el archivo. Cuando el archivo es abierto por el abierto() función, luego requiere cerrar el archivo. Utilizando el 'con'La declaración es la forma alternativa de abrir un archivo en Python. Es mejor que el abierto() función y ayuda a administrar el recurso de manera más eficiente porque asegura que el recurso abierto se cierre cerrando el archivo automáticamente después de completar la tarea. El error de apertura del archivo también se puede manejar sin el bloque Try-Except utilizando 'con' declaración.

Sintaxis:

La sintaxis del 'con'Declaración para abrir un archivo para leer y escribir se ha mostrado a continuación.

con Open (archivo, modo) como file_handler

  • El primer argumento es obligatorio y contiene el nombre de archivo.
  • El segundo argumento es opcional que se utiliza para definir el modo para abrir el archivo para leer, escribir o agregar.

Ejemplo-1: lea un archivo de texto utilizando la instrucción 'con'

Cree un archivo Python con el siguiente script que abrirá un archivo de texto utilizando el 'con' declaración. Aquí el temperatura.TXT El archivo se abrirá para la lectura y el ReadLines () la función se utilizará para leer el contenido del archivo y almacenarlo en una variable de lista. A continuación, el bucle for iterará los valores de la lista e imprimirá el contenido del archivo. El cerrado El atributo será Verdadero Después de leer el contenido del archivo.

#Preen un archivo para leer usando la declaración 'con'
Con Open ('Ventas.txt ') como FH:
#Leer archivo Línea por línea y almacenar en una lista
datos = FH.ReadLines ()
#Iterate la lista e imprime cada valor
Para el valor en los datos:
imprimir (valor, end = ")
#Chek El archivo está cerrado o no
Si FH.cerrado :
imprimir ("\ nthe archivo está cerrado.")

Producción:

La siguiente salida aparecerá después de ejecutar el script anterior si el ventas.TXT El archivo existe en la ubicación actual. La salida muestra que el archivo está cerrado automáticamente después de completar la lectura del archivo.

Ejemplo-2: lea un archivo binario utilizando la declaración 'con'

Cree un archivo de Python con el siguiente script que abrirá un archivo binario para leer y calcular el tamaño del archivo en bytes. El nombre de archivo se tomará del usuario.

#Módulo de IMPORT OS
importar sistema operativo
#Asegre el nombre de archivo del usuario
FileName = input ("Ingrese un nombre de imagen:")
#Chek el nombre de archivo existe o no
Si OS.camino.existe (nombre de archivo):
#Preen el nombre de archivo para leer
con Open (nombre de archivo, 'rb') como img:
#Inicializa el mostrador
contador = 0
#Leer el contenido del archivo
Mientras img.leer (verdadero):
#Increment el mostrador
contador += 1
imprimir ("El tamaño del archivo de imagen es: %d bytes." %encimera)
demás:
imprimir ("El archivo no existe.")

Producción:

La siguiente salida similar aparecerá después de ejecutar el script anterior si el pájaro.jpeg El archivo existe en la ubicación actual. La salida muestra que el tamaño del archivo es 9946 bytes.

Ejemplo-3: Uso de las declaraciones anidadas 'con'

Cree un archivo de Python con el siguiente script que abrirá un archivo para leer y abrirá otro archivo para escribir usando las declaraciones anidadas 'con' con '. La primera 'con'La declaración se utiliza para abrir el día laborable.TXT Archivo para leer que se crea antes. El segundo 'con'La declaración se usa para abrir las vacaciones.TXT Archivo para escribir el contenido específico del día laborable.TXT archivo.

#Preen un archivo para leer
con abierto ('día de la semana.txt ',' r ') como fh_in:
#Preen un archivo para escribir
Con Open ('Holiday.txt ',' w ') como fh_out:
# Lea el archivo Línea por línea y almacene en una lista
datos = FH_IN.ReadLines ()
Para Val en los datos:
#Coble la condición antes de escribir
Si val.Strip () == 'Sábado' o Val.strip () == 'domingo':
FH_OUT.escribir (val)
Imprimir ("Las vacaciones son: \ n")
#Preen el archivo recién creado para leer
Con Open ('Holiday.txt ',' r ') como FH:
# Lea el archivo Línea por línea y almacene en una lista
datos = FH.ReadLines ()
Para Val en los datos:
Imprimir (Val)

Producción:

La siguiente salida aparecerá después de ejecutar el script anterior.

Ejemplo-4: abra múltiples archivos en una sola instrucción 'con'

Cree un archivo Python con el siguiente script que abrirá dos archivos para escribir usando un solo 'con' declaración. El guión abrirá el día laborable.TXT El archivo para la lectura y algún contenido específico de este archivo se escribirá en el Fuera1.TXT archivo y Fuera2.TXT archivo. A continuación, ambos archivos recién escritos se abrirán para leer y el contenido de estos archivos se imprimirá.

#Preen dos archivos para escribir
con abierto ('out1.txt ',' w ') como fh1, abierto (' out2.txt ',' w ') como fh2:
# Abra un archivo para leer
con abierto ('día de la semana.txt ',' r ') como fh_in:
# Lea el archivo Línea por línea y almacene en una lista
datos = FH_IN.ReadLines ()
Para Val en los datos:
#Coble la condición antes de escribir
Si val.Strip () == 'Sábado' o Val.strip () == 'domingo':
FH2.escribir (val)
demás:
FH1.escribir (val)
#Preen dos archivos recién escritos para leer
con abierto ('out1.txt ',' r ') como fh1, abierto (' out2.txt ',' r ') como fh2:
Imprimir (FH1.readLines ())
Imprimir (FH2.readLines ())

Producción:

La siguiente salida aparecerá después de ejecutar el script anterior.

Ejemplo-5: Comparar 'con' Declaración con función Open () y función Open ()

Crear un archivo de python con el siguiente script que abrirá el mismo archivo llamado día laborable.TXT usando el 'con'Declaración y abierto() función. Se ha demostrado en el ejemplo anterior que el archivo está cerrado automáticamente después de leer o escribir el contenido, si se abre utilizando el 'con' declaración. Pero el archivo requiere cerrar usando el cierre() función, si el archivo se abre utilizando la apertura() función que se mostró utilizando el bloque de try-finalmente en este script.

# Declarar una función para verificar que el archivo esté cerrado o no
Def Check (f):
Si F.cerrado:
imprimir ("El archivo ha sido cerrado.")
demás:
imprimir ("El archivo aún no se ha cerrado.")
# Abra un archivo para leer utilizando la instrucción 'con'
con abierto ('día de la semana.txt ') como FH:
datos = FH.leer()
# Llamar a la función check ()
comprobar (FH)
# Abra un archivo para leer usando la función Open ()
FH = abierto ('día de semana.TXT')
intentar:
datos = FH.leer()
# Llamar a la función check ()
comprobar (FH)
finalmente:
FH.cerca()
# Llamar a la función check ()
comprobar (FH)

Producción:


La siguiente salida aparecerá después de ejecutar el script anterior.

Conclusión

Diferentes usos del 'con'Declaración para abrir cualquier archivo para leer o escribir se ha mostrado en este tutorial utilizando ejemplos simples que ayuden a los usuarios de Python a conocer los propósitos de usar el'con'Declaración en Python.