<html><head></head><body><div class="ydpdd1e7e7yahoo-style-wrap" style="font-family:Helvetica Neue, Helvetica, Arial, sans-serif;font-size:13px;"><div></div>
<div><br></div><div><br></div>
</div><div id="ydp4c08004fyahoo_quoted_8856071947" class="ydp4c08004fyahoo_quoted">
<div style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:13px;color:#26282a;">
<div>
Il giovedì 20 agosto 2020, 10:15:09 CEST, Valerio Pachera <sirio81@gmail.com> ha scritto:
</div>
<div><br></div>
<div><br></div>
<div><div id="ydp4c08004fyiv4937696704"><div dir="ltr">>>> def f():<br>... print(n)<br><div>... <br></div><div>non ho ancora dichiarato n.</div><div>La dichiaro esternamente alla funzione, quindi (correggetemi se sbaglio) n sarà una variabile globale.</div><div><br></div>>>> n = 10<br>>>> f()<br><div>10</div><div><br></div><div>A conferma di quanto scritto sopra, n viene stampata.</div><div><br></div><div>Ora faccio la stessa cosa ma faccio incrementare di 1 la variabile alla funzione prima di stamparla.<br></div><br>>>> def f():<br>... n += 1<br>... print(n)<br>... <br>>>> n = 10<br>>>> f()<br>Traceback (most recent call last):<br> File "<stdin>", line 1, in <module><br> File "<stdin>", line 2, in f<br><div>UnboundLocalError: local variable 'n' referenced before assignment</div><div><br></div><div>E qua non capisco...perché riesco a stamparla ma non ad incrementarla?</div><div><br></div><div>___________________________________________________________________________________<br></div><div dir="ltr" data-setdir="false">Mi intrometto per riferire quanto so io a proposito:</div><div dir="ltr" data-setdir="false">la variabile viene vista, è vero..</div><div dir="ltr" data-setdir="false">Per essere aggiornata, però, deve essere stata definita globale all'interno della funzione con la parola chiave "global".</div><div dir="ltr" data-setdir="false"><br></div></div></div>_______________________________________________<br>Python mailing list<br><a href="mailto:Python@lists.python.it" rel="nofollow" target="_blank">Python@lists.python.it</a><br><a href="https://lists.python.it/mailman/listinfo/python" rel="nofollow" target="_blank">https://lists.python.it/mailman/listinfo/python</a><br></div>
</div>
</div></body></html>