Utilisation de l'instruction 'with' en Python

PythonBeginner
Pratiquer maintenant

Introduction

Dans un royaume céleste fantastique flottant au milieu de la sérénité des nuages blancs gonflés, il existe une guilde d'aventuriers nuageux qui explorent les coins moins connus de leur domaine aérien. Vous êtes un membre distingué de cette guilde, connu pour votre sagesse et votre courage. Votre prochaine mission est de retrouver le Parchemin Perdu de Gestion Sécurisée, un artefact ancien qui contient les secrets pour manipuler les ressources du ciel sans laisser de traces qui perturbent l'équilibre délicat du royaume.

En tant qu'aventurier nuageux, votre objectif est de maîtriser une puissante construction Python connue sous le nom d'instruction with, qui fournit un moyen d'assurer que les ressources sont correctement gérées et libérées. Cette compétence sera cruciale pour préserver l'harmonie des cieux tandis que vous utilisez vos capacités de programmation pour naviguer entre les nuages et déchiffrer les parchemins que vous rencontrez.

Explorer l'instruction with

Dans cette étape, vous allez commencer votre parcours en explorant l'instruction with en Python. L'instruction with simplifie la gestion des exceptions en encapsulant les tâches de préparation et de nettoyage communes dans des gestionnaires de contexte, appelés ainsi. Votre première tâche est de lire un fichier contenant la carte de l'emplacement du Parchemin Perdu et de vous assurer qu'il est correctement fermé après utilisation.

Maintenant, lisez le contenu du fichier /home/labex/project/map.txt à l'aide de l'instruction with dans /home/labex/project/map.py :

## Code Python pour lire 'map.txt'
with open('/home/labex/project/map.txt', 'r') as file:
    print(file.read())

Cela ouvrira et fermera le fichier de manière sécurisée, même si une erreur se produit lors de la lecture de son contenu :

L'information ci-dessous devrait être affichée sur votre terminal :

Cross the Cumulus Cliffs, through the Misty Gorge, and into the Stratus Caves

Écrire dans un fichier de manière sécurisée

Pour la prochaine partie de votre défi, vous allez enregistrer votre expérience de navigation dans les Falaises Cumulus dans un fichier de journal. Cela assure que les aventuriers qui viendront après vous ont un guide, et vous apprend également l'importance des opérations d'écriture sécurisées en Python.

Ensuite, utilisez l'instruction with dans map.py pour écrire le journal dans /home/labex/project/adventure_log.txt.

log = "Navigated through Cumulus Cliffs. Encountered mild turbulences but no serious obstructions."
with open('/home/labex/project/adventure_log.txt', 'w') as file:
    file.write(log)

Exécutez le script et visualisez le contenu du fichier adventure_log.txt comme suit :

$ python3 map.py
$ cat /home/labex/project/adventure_log.txt
Navigated through Cumulus Cliffs. Encountered mild turbulences but no serious obstructions.

Avec cela, vous n'avez pas seulement laissé votre marque dans l'histoire de la guilde, mais vous avez également pratiqué la gestion des ressources grâce à l'instruction with.

Résumé

Dans ce laboratoire, vous avez entrepris une aventure dans le royaume céleste, en utilisant l'instruction with pour gérer les fichiers de manière sécurisée en Python. En combinant un scénario fantastique avec des exercices de codage, le laboratoire visait à offrir une expérience d'apprentissage captivante. L'histoire a été tissée autour de l'instruction with pour créer un contexte qui complète l'exécution du code. Vous avez appris à lire et écrire dans les fichiers efficacement sans risquer de fuites de ressources, même en cas d'erreurs, ce qui est une compétence cruciale en programmation dans le monde réel. Votre nouvelle compétence vous aidera certainement dans de nombreuses autres aventures à venir!

Rappelez-vous que le secret du maître est la pratique, donc continuez à affiner vos compétences et un jour, vous pourriez devenir l'aventurier le plus légendaire de l'histoire du royaume céleste!