Manejo de archivos en Python es una herramienta potente y versátil que se puede utilizar para realizar una amplia gama de operaciones. Sin embargo, es importante considerar cuidadosamente las ventajas y desventajas del manejo de archivos al escribir programas Python, para garantizar que el código sea seguro, confiable y funcione bien.
En este artículo exploraremos Manejo de archivos de Python, ventajas, desventajas y cómo funcionan las funciones de abrir, escribir y agregar en un archivo de Python.
Manejo de archivos Python
Python admite el manejo de archivos y permite a los usuarios manejar archivos, es decir, leer y escribir archivos, junto con muchas otras opciones de manejo de archivos, para operar con archivos. El concepto de manejo de archivos se ha extendido a varios otros lenguajes, pero la implementación es complicada o larga. Al igual que otros conceptos de Python, este concepto aquí también es fácil y breve. Pitón trata los archivos de manera diferente como texto o binarios y esto es importante. Cada línea de código incluye una secuencia de caracteres y forman un archivo de texto. Cada línea de un archivo termina con un carácter especial, llamado fin de vida o Fin de la línea personajes como coma {,} o carácter de nueva línea. Finaliza la línea actual y le dice al intérprete que ha comenzado una nueva. Comencemos con los archivos de lectura y escritura.
Ventajas del manejo de archivos en Python
- Versatilidad : El manejo de archivos en Python le permite realizar una amplia gama de operaciones, como crear, leer, escribir, agregar, cambiar el nombre y eliminar archivos.
- Flexibilidad : El manejo de archivos en Python es muy flexible, ya que le permite trabajar con diferentes tipos de archivos (por ejemplo, archivos de texto, archivos binarios, archivos CSV , etc.) y para realizar diferentes operaciones en archivos (por ejemplo, leer, escribir, agregar, etc.).
- Usuario – amigable : Python proporciona una interfaz fácil de usar para el manejo de archivos, lo que facilita la creación, lectura y manipulación de archivos.
- Multiplataforma : Las funciones de manejo de archivos de Python funcionan en diferentes plataformas (por ejemplo, Windows, Mac, Linux), lo que permite una integración y compatibilidad perfectas.
Desventajas del manejo de archivos en Python
- Propenso a errores: Las operaciones de manejo de archivos en Python pueden ser propensas a errores, especialmente si el código no está escrito cuidadosamente o si hay problemas con el sistema de archivos (por ejemplo, permisos de archivos, bloqueos de archivos, etc.).
- Riesgos de seguridad : El manejo de archivos en Python también puede presentar riesgos de seguridad, especialmente si el programa acepta entradas del usuario que pueden usarse para acceder o modificar archivos confidenciales en el sistema.
- Complejidad : El manejo de archivos en Python puede ser complejo, especialmente cuando se trabaja con operaciones u formatos de archivos más avanzados. Se debe prestar especial atención al código para garantizar que los archivos se manejen de manera adecuada y segura.
- Actuación : Las operaciones de manejo de archivos en Python pueden ser más lentas que en otros lenguajes de programación, especialmente cuando se trata de archivos grandes o se realizan operaciones complejas.
Para este artículo, consideraremos lo siguiente frikis.txt archivo como ejemplo.
Hello world techcodeview.com 123 456>
Abrir archivo Python
Antes de realizar cualquier operación en el archivo, como leer o escribir, primero debemos abrir ese archivo. Para esto, deberíamos usar la función incorporada de Python. abierto() pero al momento de abrir, tenemos que especificar el modo, que representa el propósito del archivo de apertura.
f = open(filename, mode)>
Donde se admite el siguiente modo:
- r: abra un archivo existente para una operación de lectura.
- En: abra un archivo existente para una operación de escritura. Si el archivo ya contiene algunos datos, se anulará, pero si el archivo no está presente, también lo crea.
- a: abra un archivo existente para la operación de agregar. No anulará los datos existentes.
- r+: Para leer y escribir datos en el archivo. Se anularán los datos anteriores del archivo.
- w+: Para escribir y leer datos. Anulará los datos existentes.
- un+: Para agregar y leer datos del archivo. No anulará los datos existentes.
Trabajando en modo lectura
Hay más de una manera de Cómo leer de un archivo en Python . Veamos cómo podemos leer el contenido de un archivo en modo lectura.
descargar autocad 2019 ingles mediafire
Ejemplo 1: El comando de apertura abrirá el archivo Python en modo lectura y el bucle for imprimirá cada línea presente en el archivo.
Python3
# a file named 'geek', will be opened with the reading mode.> file> => open>(>'geek.txt'>,>'r'>)> # This will print every line one by one in the file> for> each>in> file>:> >print> (each)> |
>
>
Producción:
Hello world techcodeview.com 123 456>
Ejemplo 2: En este ejemplo, extraeremos una cadena que contiene todos los caracteres del archivo Python y luego podremos usar file.read() .
Python3
# Python code to illustrate read() mode> file> => open>(>'geeks.txt'>,>'r'>)> print> (>file>.read())> |
>
>
Producción:
Hello world techcodeview.com 123 456>
Ejemplo 3: En este ejemplo, veremos cómo podemos leer un archivo usando el con declaración en pitón.
Python3
# Python code to illustrate with()> with>open>(>'geeks.txt'>) as>file>:> >data>=> file>.read()> print>(data)> |
>
>
Producción:
Hello world techcodeview.com 123 456>
Ejemplo 4: Otra forma de leer un archivo es llamar a una cierta cantidad de caracteres, como en el siguiente código, el intérprete leerá los primeros cinco caracteres de los datos almacenados y los devolverá como una cadena:
Python3
# Python code to illustrate read() mode character wise> file> => open>(>'geeks.txt'>,>'r'>)> print> (>file>.read(>5>))> |
>
>
Producción:
Hello>
Ejemplo 5: También podemos dividir líneas mientras leemos archivos en Python. La función split() divide la variable cuando se encuentra espacio. También puedes dividir usando cualquier personaje que desees.
Python3
# Python code to illustrate split() function> with>open>(>'geeks.txt'>,>'r'>) as>file>:> >data>=> file>.readlines()> >for> line>in> data:> >word>=> line.split()> >print> (word)> |
>
>
Producción:
['Hello', 'world'] ['techcodeview.com'] ['123', '456']>
Crear un archivo usando la función write()
Al igual que leer un archivo en Python, existen varias formas de Escribir en un archivo en Python . Veamos cómo podemos escribir el contenido de un archivo usando la función write() en Python.
Trabajar en modo de escritura
Veamos cómo crear un archivo y cómo funciona el modo de escritura.
Ejemplo 1: En este ejemplo, veremos cómo se usa el modo de escritura y la función write() para escribir en un archivo. El comando close() finaliza todos los recursos en uso y libera el sistema de este programa en particular.
Python3
# Python code to create a file> file> => open>(>'geek.txt'>,>'w'>)> file>.write(>'This is the write command'>)> file>.write(>'It allows us to write in a particular file'>)> file>.close()> |
cuando comienza q2
>
>
Producción:
This is the write commandIt allows us to write in a particular file>
Ejemplo 2: También podemos usar la declaración escrita junto con la función with().
Python3
# Python code to illustrate with() alongwith write()> with>open>(>'file.txt'>,>'w'>) as f:> >f.write(>'Hello World!!!'>)> |
>
>
Producción:
Hello World!!!>
Funcionamiento del modo anexar
Veamos cómo funciona el modo agregar.
Ejemplo: Para este ejemplo, usaremos el archivo Python creado en el ejemplo anterior.
Python3
# Python code to illustrate append() mode> file> => open>(>'geek.txt'>,>'a'>)> file>.write(>'This will add this line'>)> file>.close()> |
>
>
Producción:
This is the write commandIt allows us to write in a particular fileThis will add this line>
También hay varios otros comandos en el manejo de archivos de Python que se utilizan para manejar diversas tareas:
rstrip(): This function strips each line of a file off spaces from the right-hand side. lstrip(): This function strips each line of a file off spaces from the left-hand side.>
Está diseñado para proporcionar una sintaxis y un manejo de excepciones mucho más limpios cuando se trabaja con código. Eso explica por qué es una buena práctica utilizarlos con una declaración cuando corresponda. Esto es útil porque al utilizar este método, cualquier archivo abierto se cerrará automáticamente una vez finalizado, por lo que se realizará una limpieza automática.
Implementando todas las funciones en el manejo de archivos.
En este ejemplo, cubriremos todos los conceptos que hemos visto anteriormente. Aparte de eso, también veremos cómo podemos eliminar un archivo usando la función remove() de Python. módulo del sistema operativo .
Python3
import> os> def> create_file(filename):> >try>:> >with>open>(filename,>'w'>) as f:> >f.write(>'Hello, world!
'>)> >print>(>'File '> +> filename>+> ' created successfully.'>)> >except> IOError:> >print>(>'Error: could not create file '> +> filename)> def> read_file(filename):> >try>:> >with>open>(filename,>'r'>) as f:> >contents>=> f.read()> >print>(contents)> >except> IOError:> >print>(>'Error: could not read file '> +> filename)> def> append_file(filename, text):> >try>:> >with>open>(filename,>'a'>) as f:> >f.write(text)> >print>(>'Text appended to file '> +> filename>+> ' successfully.'>)> >except> IOError:> >print>(>'Error: could not append to file '> +> filename)> def> rename_file(filename, new_filename):> >try>:> >os.rename(filename, new_filename)> >print>(>'File '> +> filename>+> ' renamed to '> +> new_filename>+> ' successfully.'>)> >except> IOError:> >print>(>'Error: could not rename file '> +> filename)> def> delete_file(filename):> >try>:> >os.remove(filename)> >print>(>'File '> +> filename>+> ' deleted successfully.'>)> >except> IOError:> >print>(>'Error: could not delete file '> +> filename)> if> __name__>=>=> '__main__'>:> >filename>=> 'example.txt'> >new_filename>=> 'new_example.txt'> >create_file(filename)> >read_file(filename)> >append_file(filename,>'This is some additional text.
'>)> >read_file(filename)> >rename_file(filename, new_filename)> >read_file(new_filename)> >delete_file(new_filename)> |
>
>
Producción:
File example.txt created successfully. Hello, world! Text appended to file example.txt successfully. Hello, world! This is some additional text. File example.txt renamed to new_example.txt successfully. Hello, world! This is some additional text. File new_example.txt deleted successfully.>