Cómo crear, mover y eliminar archivos en Python

C

Introducción

El manejo de archivos es una habilidad básica y fundamental para cualquier programador. Se utilizan con mucha frecuencia para almacenar datos de aplicaciones, configuraciones de usuario, videos, imágenes, etc. Hay un sinnúmero de casos de uso para archivos en aplicaciones de software, por lo que sería inteligente familiarizarse profundamente con las tareas de manipular archivos. Estas tareas podrían incluir (entre otras) crear, eliminar y mover archivos.

En este artículo, cubriremos el proceso de trabajar con archivos usando el lenguaje de programación Python. Los métodos integrados que ofrece hacen que sea muy fácil manejar archivos usando una cantidad relativamente pequeña de código. Al igual que con cualquier cosa en programación, hay muchas formas de lograr el mismo objetivo cuando se trata de archivos, pero en este artículo nos ceñiremos a los conceptos básicos y mostraremos las formas más comunes de realizar estas acciones.

Creando archivos en Python

Modos de apertura de archivos

Hay modos en los que puede abrir un archivo en Python. El modo que elija depende de cómo planea usar el archivo, o qué tipo de datos leerá (escribirá) desde (hacia) el archivo. Este modo se especifica al abrir un archivo con el open() método, explicado con más detalle en la siguiente sección.

Echemos un vistazo a algunas de las posibles combinaciones de modos de archivo:

  • w: Abre un archivo para escribir y crea un nuevo archivo si aún no existe. En el caso de que el archivo exista, lo sobrescribe.
  • w+: Abre un archivo para escribir, pero también para leerlo y crearlo si no existe. Si ya existe un archivo, lo sobrescribe.
  • r: Abre un archivo solo para lectura.
  • rb: Abre un archivo para lectura en formato binario.
  • wb: Abre un archivo para escribir en formato binario.
  • wb+: Abre un archivo para escribir y leer en formato binario.
  • a: Abre un archivo para agregar al final del archivo.
  • +: En general, este carácter se utiliza junto r, wo a y significa tanto escritura como lectura.

Si no se especifica ningún modo de archivo, r se asumirá por defecto.

Al elegir un modo, considere cuidadosamente cuál es su caso de uso y para qué se utilizará todo el archivo durante el tiempo que esté abierto.

open()

Como con casi cualquier cosa en Python, realizar muchas tareas relacionadas con archivos es muy simple. Por ejemplo, la creación de un archivo en Python se puede hacer en una sola línea de código:

myFile = open("new.txt", "w+")

En el ejemplo anterior, hemos abierto un archivo, “new.txt” para leer y escribir. En nuestro caso, dado que el archivo no existe, se crea automáticamente.

los open() El método acepta muchos argumentos, aunque la mayoría de las veces solo usará estos dos:

  • nombre de archivo: campo obligatorio para especificar el nombre del archivo que deseamos abrir / crear. En nuestro ejemplo, “new.txt”
  • mode: argumento opcional para especificar el modo de apertura del archivo, en nuestro ejemplo “w +”

Puede omitir el segundo argumento, en cuyo caso Python lo asumirá como r.

Los otros argumentos que no se enumeran aquí le permiten configurar el almacenamiento en búfer, codificaciones, manejo de nuevas líneas, etc. Para obtener más información sobre estos argumentos, consulte el documentación oficial de Python sobre el open método.

close()

Cuando abre un archivo, siempre debe asegurarse de cerrarlo también. Esto se puede hacer usando el objeto de archivo close() método, o abrirlo usando el with palabra clave que proporciona Python, que la cierra automáticamente cuando está fuera de alcance. Después de cerrar el archivo, ya no estará disponible para leer o escribir dentro de su código, a menos que lo abra de nuevo.

Mantener sus archivos abiertos consumirá recursos del sistema, ralentizará su programa y, en algunos casos, evitará que otro código utilice el archivo. La recolección de basura de Python hace que sea mejor cerrar automáticamente los archivos cuando ya no se usan, pero no debe confiar en ello.

Si un archivo ya está cerrado, llamar close() en él de nuevo no lo afectará en absoluto:

myFile.close()
myFile.close() # Doesn't affect the file

Mover archivos en Python

Para mover un archivo en Python, necesitaremos importar el os y shutil módulos que nos brindan la capacidad de copiar, mover y eliminar archivos en Python. Ambos módulos proporcionan métodos para hacerlo, aunque en muchos casos el shutil El módulo tiene métodos más convenientes.

import os
import shutil

# Move a file by renaming it's path
os.rename('/Users/billy/d1/xfile.txt', '/Users/billy/d2/xfile.txt')

# Move a file from the directory d1 to d2
shutil.move('/Users/billy/d1/xfile.txt', '/Users/billy/d2/xfile.txt')

Tenga en cuenta que el directorio de destino debe existir para que este ejemplo funcione. Una vez que haya configurado los directorios “d1” y “d2” (o simplemente haya cambiado el ejemplo para que se ajuste a la estructura de su directorio), ejecute el código. Ahora revise el directorio “d2” y debería ver el xfile.txt si ahora está presente en ese directorio.

Bastante simple, ¿verdad?

Eliminar archivos en Python

Como probablemente adivinó, es bastante fácil eliminar un archivo en Python usando el remove() método del os módulo.

En nuestro ejemplo a continuación, eliminaremos “xfile.txt”. Todo lo que tenemos que hacer es llamar al remove() método con la ruta del archivo que queremos eliminar:

import os

# Delete xfile.txt
os.remove('/Users/billy/d2/xfile.txt')

Ahora revise el directorio “d2” nuevamente y el archivo xfile.txt estará listo. ¡Simple como eso!

Conclusión

En este artículo, mostramos ejemplos muy simples de cómo crear, mover y eliminar archivos en Python usando las funciones integradas como open(), shutil.move()y os.remove(). Además, presentamos una sencilla introducción y explicación de los modos de archivo de Python.

 

About the author

Ramiro de la Vega

Bienvenido a Pharos.sh

Soy Ramiro de la Vega, Estadounidense con raíces Españolas. Empecé a programar hace casi 20 años cuando era muy jovencito.

Espero que en mi web encuentres la inspiración y ayuda que necesitas para adentrarte en el fantástico mundo de la programación y conseguir tus objetivos por difíciles que sean.

Add comment

Sobre mi

Últimos Post

Etiquetas

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con tus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, aceptas el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Más información
Privacidad