"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo optimizar el manejo de archivos con múltiples declaraciones `open()` en Python?

¿Cómo optimizar el manejo de archivos con múltiples declaraciones `open()` en Python?

Publicado el 2024-11-22
Navegar:631

How to Streamline File Handling with Multiple `open()` Statements in Python?

Cómo mejorar el manejo de archivos con múltiples declaraciones abiertas en Python

En Python, la función open() es una herramienta versátil para la entrada de archivos y salida. Cuando se trabaja con varios archivos, es ventajoso utilizar la instrucción with para garantizar una gestión adecuada de los recursos.

Situación:

Considere un fragmento de código que lea los nombres de un archivo y agrega texto adicional a nombres específicos. La implementación actual abre archivos secuencialmente, lo que puede no ser óptimo.

Solución:

Python permite usar múltiples declaraciones open() dentro de una sola declaración with separando por comas a ellos. Esto permite manejar múltiples archivos simultáneamente y mejora la administración de recursos.

def filter(txt, oldfile, newfile):
    '''
    Read a list of names from a file line by line into an output file.
    If a line begins with a particular name, insert a string of text
    after the name before appending the line to the output file.
    '''

    with open(newfile, 'w') as outfile, open(oldfile, 'r', encoding='utf-8') as infile:
        for line in infile:
            if line.startswith(txt):
                line = line[0:len(txt)]   ' - Truly a great person!\n'
            outfile.write(line)

Notas adicionales:

  • Devolver explícitamente desde una función sin valor de retorno es innecesario.
  • Esta característica se introdujo en Python 2.7 y 3.1 o más reciente.
  • Si se requiere compatibilidad con las versiones 2.5 o 2.6 de Python, se puede anidar con declaraciones o se recomienda usar contextlib.nested.

Al optimizar el manejo de archivos de esta manera, los desarrolladores pueden mejorar la legibilidad del código, la administración de recursos y la eficiencia general.

Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3