Python escribir en un archivo

Funciones y métodos de Python

La función open () escribe contenido en un archivo existente. Debe utilizar & ldquo; w & rdquo ;, & ldquo; a & rdquo ;, & ldquo; r + & rdquo ;, & ldquo; a + & rsquo ;, o & ldquo; x & rdquo; modos de archivo para escribir texto en un archivo. Los modos de archivo más comunes son & ldquo; w & rdquo; y "a". Estos modos escriben datos en un archivo y anexan datos a un archivo, respectivamente.

¿Necesita realizar un cambio en un archivo? Python lo tiene cubierto. Puede escribir datos en un archivo nuevo o modificar los datos existentes en un archivo usando las funciones de E / S integradas de Python.

En esta guía, vamos a discutir cómo escribir en un archivo en Python. Veremos un ejemplo para ilustrar cómo escribir en un archivo. ¡Empecemos!




Cómo escribir en un archivo en Python

Puede escribir en un archivo en Python usando función open () . Debe especificar & ldquo; w & rdquo; o & ldquo; a & rdquo; como parámetro para escribir en un archivo. & ldquo; w & rdquo; sobrescribe el contenido existente de un archivo. & ldquo; a & rdquo; agrega contenido a un archivo.

En Python, puede escribir en archivos de texto y binarios. Para este tutorial, nos centraremos en los archivos de texto. Estos son archivos sin ninguna codificación específica, por lo que se pueden abrir con un editor de texto. Los archivos de texto incluyen archivos .csv, archivos .txt y archivos .md.

No es necesario importar ninguna biblioteca externa para escribir en un archivo en Python. El lenguaje de programación Python tiene un conjunto de herramientas incorporado que puede usar para escribir en un archivo.




Abrir un archivo para escribir

Antes de que podamos escribir en un archivo, necesitamos para aprender a abrir uno. Digamos que queremos escribir una lista de ingredientes para un bollo en una lista. Comenzaríamos abriendo un archivo llamado scone.txt así:

scone_file = open (& ldquo; scone.txt & rdquo ;, & ldquo; w & rdquo;) < / em>

El 81% de los participantes afirmaron que se sentían más seguros acerca de sus perspectivas laborales tecnológicas después de asistir a un bootcamp. Asigne a un bootcamp hoy mismo.

El graduado promedio de un bootcamp pasó menos de seis meses en la transición profesional, desde comenzar un bootcamp hasta encontrar su primer trabajo.

Hemos abierto nuestro bollo .txt usando el modo w . Esto significa que podemos escribir en el archivo con el que estamos trabajando. Hay un par de modos diferentes que es posible que desee utilizar. Los que necesitamos para escribir son:

  • w: Este modo le permite escribir en un archivo. Borra el contenido de un archivo y crea uno nuevo.
  • a: Este modo agrega información al final de un archivo.
  • r +: Este modo le permite leer información de y escribir datos en un archivo.
  • a +: este modo le permite agregar información al final de un archivo y leer el archivo.
  • x: crea un archivo si uno no ya existen a los que podemos agregar datos.

Cuando abre un archivo en Python, debe cerrarlo después. De lo contrario, Python cerrará y eliminará automáticamente el archivo. La mejor manera de hacerlo cerrar el archivo con el que está trabajando automáticamente es mediante el uso de una declaración with:

 with open ("scone.txt", " w ") como archivo: // Trabajar con el archivo 



Python Escribir en un archivo

Queremos comenzar a agregar los ingredientes para nuestro bollo a nuestro archivo. Para Al hacerlo, podemos usar la función write () . Esto agrega los caracteres que especifica al final de un archivo.

Cuando crea un nuevo objeto de archivo, un nuevo archivo se creará si aún no existe uno. Vamos a utilizar el modo & ldquo; w & rdquo; para escribir en nuestro archivo scones.txt porque actualmente no incluye ninguna información mación.

Agreguemos tres ingredientes a nuestro archivo scones.txt:

 con abrir ("scone.txt", "w") como archivo: file.write ("350 g de harina con levadura") file.write ("1 cucharadita de levadura en polvo") file.write ("85 g de mantequilla") 

Cuando este código se ejecuta, se agregan tres líneas de texto a scone.txt. Hemos utilizado y ldquo; & rdquo; caracteres al final de cada línea para indicar que queremos que aparezcan nuevas líneas en nuestro texto . Estos se denominan caracteres de nueva línea e imprimen una línea en el archivo.

Si no especificamos estos caracteres, todo nuestro texto se escribiría en la misma línea.

Vamos a abre nuestro archivo scones.txt:

350 g de harina con levadura

1 cucharadita de levadura en polvo

85 g de mantequilla

Nuestro archivo tiene tres líneas de texto! Ahora, tenemos algunos ingredientes más para agregar. Para agregarlos, vamos a abrir nuestro archivo en modo agregar .

Si abrimos nuestro archivo en modo escribir , un nuevo archivo sería creado. Perderíamos los ingredientes que ya agregamos al archivo. Vamos a abrir el archivo:

 con open ("scone.txt", "a") como archivo : file.write ("3 cucharadas de azúcar en polvo") file.write ("175ml de leche") file.write ("1 cucharadita de extracto de vainilla") 

Este código agrega tres archivos de texto a scones.txt:


350 g de harina con levadura

1 cucharadita de levadura en polvo

85 g de mantequilla

3 cucharadas de polvo para hornear azúcar

"Career Karma entró en mi vida cuando más lo necesitaba y rápidamente me ayudó a combinar con un bootcamp. ¡Dos meses después de graduarme, encontré el trabajo de mis sueños que se alineaba con mis valores y metas en la vida! "

Venus, ingeniero de software en Rockbot

175 ml de leche

1 cucharadita de extracto de vainilla

¡Lo logramos! Hemos agregado texto a un archivo de texto en Python.




Python Write to an existente Archivo

Puede escribir en un archivo existente utilizando la función open () y el parámetro & ldquo; a & rdquo ;. Solo puede escribir al final de un archivo.

Esto significa que No hay forma de editar un archivo existente usando solo las operaciones de archivo de Python integradas. Existe una solución alternativa que podemos crear. Esto implica leer un archivo en una lista y luego manipular el contenido de la lista.

No hay límite para la cantidad de caracteres que puede leer y escribir en archivos en Python. Solo puede escribir datos de cadena en un archivo. No puede escribir números enteros, puntos flotantes u otros tipos de datos en un archivo .

Digamos que queremos añadir & ldquo; Scone Ingredientes & rdquo; al principio de nuestra lista de ingredientes. Podríamos hacer esto leyendo nuestros ingredientes en una lista y luego insertando nuestra nueva línea de texto al principio usando insert ().

Preparar una lista para escribir en un archivo < / h3>

La insert () función acepta dos parámetros. Primero debe especificar la posición del índice en la que desea insertar un elemento. Luego, debe especificar el valor que desea insertar en la lista. Considere este código:

 con open ("scones.txt", "r") como archivo: scone_file = file.readlines () scone_file.insert (0, "Scone Ingredients") con open ("scones.txt", "w") como scones: contenido = "" .join (scone_file) scones.write (contenido) 

Hemos comenzado abriendo nuestro archivo en & ldquo; leer & rdquo; modo. Usamos la función readlines () para recuperar todo el contenido de nuestro archivo existente. Esto devuelve una lista de las líneas en nuestro archivo. Usamos la función insert () para agregar & ldquo; Scone Ingredients & rdquo; a la posición de índice 0 en nuestra lista de líneas de archivo.


Python Write to Text File

Una vez que hemos agregado el texto que queremos agregar, escribimos todo el contenido en el archivo. Usamos el .join () función para convertir nuestra lista de líneas de archivo a una cadena. Luego escribimos ese valor en el archivo.

Abramos los datos de nuestro archivo scone.txt:

Ingredientes de Scone

350g self- levadura de harina

1 cucharadita de levadura en polvo

85 g de mantequilla

3 cucharadas de azúcar en polvo

175 ml de leche

1 cucharadita de extracto de vainilla

Nuestra lista ahora comienza con & ldquo; Scone Ingredients & rdquo ;.

De manera similar, podemos editar el contenido de nuestra lista de líneas de archivo. Digamos que queremos aumentar la cantidad de mantequilla en nuestra receta a 95g. Podríamos hacerlo usando este código:

 wi th open ("scones.txt", "r") como archivo: scone_file = file.readlines () scone_file [3] = "95 g de mantequilla" con open ("scones.txt", "w") como scones: contenido = "" .join (scone_file) scones.write (contenido) 

Hemos utilizado la notación de corchetes para cambiar el valor del elemento en la posición del índice 3 en nuestra lista de ingredientes. Este artículo corresponde a nuestra & ldquo; mantequilla & rdquo; ingrediente.

Establecemos el valor en esta posición en la lista en & ldquo; 95g & rdquo; de mantequilla. Luego escribimos el contenido revisado del archivo de nuevo en el archivo en modo de escritura. Nuestro código devuelve:

Ingredientes del bollo

350 g de harina con levadura

1 cucharadita de levadura en polvo

95 g de mantequilla

3 cucharadas de azúcar en polvo

175 ml de leche

1 cucharadita de extracto de vainilla

Nuestra receta ahora requiere & ldquo; 95 g de mantequilla & rdquo; en lugar de & ldquo; 85g de mantequilla & rdquo ;.




Conclusión

Puede leer y escribir datos en un archivo usando el método open (). Los dos modos principales que utilizará para escribir en un archivo son & ldquo; a & rdquo; y & ldquo; w & rdquo ;, que significan & ldquo; append & rdquo; y & ldquo; escribir & rdquo ;, respectivamente.

Para obtener más información sobre Python, lea nuestra guía completa sobre cómo codificar en Python .





Python escribir en un archivo: StackOverflow Questions