prova a passare: <br>test(a, junk=True )<br><br><br><div class="gmail_quote">Il giorno 16 marzo 2009 15.30, Alessandro Dentella <span dir="ltr"><<a href="mailto:sandro@e-den.it">sandro@e-den.it</a>></span> ha scritto:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Ciao,<br>
<br>
ogni tanto scoprio mio malgrado cose elementari che non capisco...<br>
<br>
ero convinto che nel passare argomenti ad una funzione, usare *list fosse<br>
equivalente a passare i singoli componenti (ed analogamente per i<br>
dizionari) ma vedo che non è così.<br>
<br>
def test(*args, **kw):<br>
pass<br>
<br>
a = [1,2,3]<br>
test(1,2,3, junk=True ) # funziona<br>
test(*a, junk=True ) # solleva syntax error<br>
<br>
Quale dovrebbe essere la corretta sintassi della seconda versione?<br>
Devo necessariamente usare qualcosa come:<br>
<br>
test(*a, **{'junk' :True} ) # funziona<br>
<br>
Avevo sempre interpretato **kw come: raccogli tutti i keyword args nel<br>
dizionario kw, ma se fosse così avrebbe dovuto funzionare anche nella riga<br>
sopra (junk=True)<br>
<br>
chiedo lumi...<br>
grazie<br>
sandro<br>
_______________________________________________<br>
Python mailing list<br>
<a href="mailto:Python@lists.python.it">Python@lists.python.it</a><br>
<a href="http://lists.python.it/mailman/listinfo/python" target="_blank">http://lists.python.it/mailman/listinfo/python</a><br>
</blockquote></div><br>