Junior — Middle
Qual parola chiave in Python viene usata per definire un gestore di contesto?
sobes.tech AI
Risposta dell'AI
In Python, per definire un gestore di contesto si utilizza la parola chiave with durante il suo utilizzo, e per creare un proprio gestore di contesto si applicano generalmente i metodi __enter__ e __exit__ in una classe.
Tuttavia, se si tratta della dichiarazione di una funzione gestore di contesto, si utilizza il decoratore @contextmanager dal modulo contextlib.
Esempio di creazione di un gestore di contesto con una classe:
class MyContextManager:
def __enter__(self):
print('Entrata nel contesto')
return self
def __exit__(self, exc_type, exc_val, exc_tb):
print('Uscita dal contesto')
with MyContextManager():
print('Dentro il contesto')
Esempio con @contextmanager:
from contextlib import contextmanager
@contextmanager
def my_context():
print('Ingresso')
yield
print('Uscita')
with my_context():
print('Dentro')
Pertanto, le parole chiave per lavorare con i gestori di contesto sono with (per usarli) e i metodi __enter__ e __exit__ (per definirli).