alcuni oggetti di Python (context manager) accettano di essere inseriti in with 
	- rende più semplice il codice, utilizzare le funzion i dell'oggetto ed evita dimenticanze
- alla inizio del blocco l'oggetto viene aperto automaticamente f.__enter__()
- alla fine del blocco l'oggetto viene chiuso automaticamente f.__exit__()
- garantisce la chiusura del file anche nel caso in cui il programma venga interrotto da un'eccezione
sintassi
	
		- dopo l'oggettooggetto = .... comandi creazione oggetto context manager
with oggetto:
		... blocco di comandi che utlizzando l'oggetto
		
		
		
		- direttowith .... as :
... blocco di comandi che utlizzando l'oggetto
		
	
esempio: scrivi nel file
	
f = open('test.txt', 'w') # creiamo il file object
	
with f: # usiamo il file object come context manager nel with
	
f.write('contenuto del file') # scriviamo il file
	
f.closed # verifichiamo che il file è ancora aperto
	
	
f.closed # verifichiamo che dopo il with il file è chiuso
	
	
risultato
	
18 → scriviamo nel file 18 caratteri
	
False → il file é ancora aperto
	
True → il file é chiuso
esempio: scrivi nel file
	
with open('test.txt', 'w') as f: # creiamo direttamente l'oggetto f in with
	
f.write('contenuto del file') # scriviamo il file
	
	
f.closed # verifichiamo che dopo il with il file è chiuso
	
	
risultato
	
18 → scriviamo nel file 18 caratteri
	
True → il file é chiuso