Mot clé Python "With" : gestion des ressources non gérées
En Python, le mot clé "with" joue un rôle crucial dans la gestion des ressources non gérées, tels que les flux de fichiers. Cela ressemble à l'instruction "using" dans VB.NET et C#, facilitant le nettoyage des ressources lorsque le bloc de code qui leur est associé se termine, même en présence d'exceptions.
Essentiellement, "with" fournit une syntaxe simplifiée pour les blocs "essayer/finalement". Selon la documentation de Python :
The with statement clarifies code that previously would use try...finally blocks to ensure that clean-up code is executed.
Comment utiliser "With"
La syntaxe de l'instruction "with" est :
with expression [as variable]: with-block
L'expression est évaluée et doit générer un objet supportant le protocole de gestion de contexte (avec __enter__() et __exit__() méthodes).
Exemple
Considérez l'extrait de code Python suivant :
with open('/tmp/workfile', 'r') as f: read_data = f.read() print(f.closed)
Dans ce code, l'instruction "with" ouvre le fichier "/tmp/workfile" en mode lecture et le lie à la variable "f." Le "with-block" contient des opérations sur le fichier "f", telles que la lecture de son contenu dans "read_data".
À la sortie du "with-block", l'objet fichier est automatiquement fermé, même si un une exception se produit dans le bloc. La méthode __exit__() de l'objet fichier s'occupe du nettoyage en garantissant que le fichier est fermé et que toutes les autres ressources nécessaires sont libérées.
Avantages de "Avec"
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!