Maison > développement back-end > Tutoriel Python > Comment rationaliser la gestion des fichiers avec plusieurs instructions « open() » en Python ?

Comment rationaliser la gestion des fichiers avec plusieurs instructions « open() » en Python ?

Mary-Kate Olsen
Libérer: 2024-10-31 04:45:02
original
624 Les gens l'ont consulté

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

Comment améliorer la gestion des fichiers avec plusieurs instructions ouvertes en Python

En Python, la fonction open() est un outil polyvalent pour la saisie de fichiers et sortie. Lorsque vous travaillez avec plusieurs fichiers, il est avantageux d'utiliser l'instruction with pour garantir une bonne gestion des ressources.

Situation :

Considérez un extrait de code qui lit les noms d'un fichier et ajoute du texte supplémentaire à des noms spécifiques. L'implémentation actuelle ouvre les fichiers de manière séquentielle, ce qui peut ne pas être optimal.

Solution :

Python permet d'utiliser plusieurs instructions open() dans une seule instruction with en les séparant par des virgules. eux. Cela permet de gérer plusieurs fichiers simultanément et améliore la gestion des ressources.

<code class="python">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)</code>
Copier après la connexion

Remarques supplémentaires :

  • Le retour explicite d'une fonction sans valeur de retour n'est pas nécessaire.
  • Cette fonctionnalité a été introduite dans Python 2.7 et 3.1 ou plus récent.
  • Si la compatibilité avec les versions 2.5 ou 2.6 de Python est requise, l'imbrication avec des instructions ou l'utilisation de contextlib.nested est recommandée.

En optimisant la gestion des fichiers de cette manière, les développeurs peuvent améliorer la lisibilité du code, la gestion des ressources et l'efficacité globale.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal