Qu'est-ce qui rend le gestionnaire de contexte de Python heureux?

Contexte

Fabric Context Manager

Si vous lisez un programme qui utilise Fabric, un objet est appelé par l'instruction with. Après quelques recherches, il semble qu'il s'appelle ** Context Manager . .. La personne ( manager ) qui gère le contexte ( conquitest **) est Que signifie Python et qu'est-ce qui me rend heureux? Je ne l'ai pas bien compris et j'ai pensé que je ne devrais pas le copier facilement, alors j'ai décidé de le chercher.

Qu'est-ce qu'un gestionnaire de contexte en premier lieu?

Dans la documentation officielle Il est décrit comme un objet permettant de définir et d'établir le ** contexte d'exécution ** lors de l'exécution de l'instruction with. Alors, qu'est-ce que le ** contexte d'exécution **?

J'ai donc trouvé un article dans le débordement de pile. What is a “runtime context”?

Il est décrit comme un environnement assemblé avec l'appel ** \ _ \ _ enter \ _ \ _ () et démoli avec l'appel \ _ \ _ exit \ _ \ _ () **. Cet ** environnement ** fait probablement référence à l'ensemble des propriétés que possède le gestionnaire de contexte lui-même.

Le gestionnaire de contexte promet toujours de définir les méthodes spéciales \ _ \ _enter \ _ \ _ () et \ _ \ _ exit \ _ \ _ (). Les signatures \ _ \ _ enter \ _ \ _ () et \ _ \ _ exit \ _ \ _ () sont strictement acceptées. Les détails sont omis.

Pourquoi vous souciez-vous de créer un gestionnaire de contexte qui a été négocié?

Lorsque le gestionnaire de contexte est appelé avec l'instruction with, juste avant le bloc with, Assurez-vous d'appeler \ _ \ _enter \ _ \ _ () Si le traitement du bloc with se termine normalement (ou qu'une exception se produit), Le gestionnaire de contexte \ _ \ _ exit \ _ \ _ () est toujours appelé.

De ce qui précède, les avantages de l'utilisation du gestionnaire de contexte peuvent être vus.

Créez votre propre gestionnaire de contexte et appelez-le

Décrit à une date ultérieure

Recommended Posts

Qu'est-ce qui rend le gestionnaire de contexte de Python heureux?
Comment utiliser le gestionnaire de contexte de Python
Qu'est-ce que __init__.py de Python?
Qu'est-ce qu'un changement de contexte?
Gestionnaire de contexte utile pour le fabric