Il 12/06/2017 11:31, Raffaele Salmaso ha scritto:
2017-06-12 11:21 GMT+02:00 Daniele Zambelli <[email protected] <mailto:[email protected]>>:Il 9 giugno 2017 12:09, Davide Olianas <[email protected] <mailto:[email protected]>> ha scritto: > with open('pippo', 'rb') as f: > oggetto = pickle.load(f) Perché usare with e non semplicemente: f = open('pippo', 'rb') oggetto = pickle.load(f) ?Così ti rimane aperto il file inutilmente, col with invece lo chiudi appena hai finito di usarlo. Per uno script usa e getta potrebbe non essere un problema, ma in generale meglio liberare le risorse usate appena possibile.
Aggiungo: e mentre "with" ti chiude automaticamente il file anche in caso di eccezione, nel caso di un'eccezione lanciata prima di arrivare a un ipotetico f.close() il file rimarrebbe comunque aperto. Puoi sempre utilizzare try/finally per chiudere comunque il file qualunque cosa vada storto, ma with è lì che lo fa per te, perché non usarlo...
Paolo
_______________________________________________ Python mailing list [email protected] http://lists.python.it/mailman/listinfo/python
