La syntaxe en Python de with est assez étrange, quel problème essait-il de résoudre?
with est utilisé lorsqu’on travaille avec des ressources non managées, notamment ouverture d’une fichier. Avant on utilisait try...catch,
set things up
try:
do something
finally:
tear things down
Syntaxe basique de with
with expression [as variable]:
with-block
L’expression est évaluée, et retourne un objet qui implémente le context management protocol, c’est à dire qui possède les méthodes __enter__() et __exit__()
with open('text.txt','w') as fichier
fichier.write('Hello')
Avec cette syntaxe pas besoin de fermer explicitement le fichier, c’est automatique.