<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<br>
<div class="moz-cite-prefix">Il 12/06/2017 11:31, Raffaele Salmaso
ha scritto:<br>
</div>
<blockquote type="cite"
cite="mid:CABgH4Ju=dp2o7Anuda0wtUxEAkQrMF3uhyC9w=gfadcAF9cuBQ@mail.gmail.com">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote">2017-06-12 11:21 GMT+02:00 Daniele
Zambelli <span dir="ltr"><<a
href="mailto:daniele.zambelli@gmail.com" target="_blank"
moz-do-not-send="true">daniele.zambelli@gmail.com</a>></span>:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex"><span
class="">Il 9 giugno 2017 12:09, Davide Olianas <<a
href="mailto:davide@davideolianas.com"
moz-do-not-send="true">davide@davideolianas.com</a>>
ha scritto:<br>
> with open('pippo', 'rb') as f:<br>
> oggetto = pickle.load(f)<br>
</span>Perché usare with e non semplicemente:<br>
f = open('pippo', 'rb')<br>
oggetto = pickle.load(f)<br>
?<br>
</blockquote>
<div>Così ti rimane aperto il file inutilmente, col with
invece lo chiudi appena hai finito di usarlo.</div>
<div>Per uno script usa e getta potrebbe non essere un
problema, ma in generale meglio liberare le risorse usate
appena possibile.</div>
</div>
<br>
</div>
</div>
</blockquote>
<br>
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...<br>
<br>
Paolo<br>
</body>
</html>