Il giorno lun 12 feb 2024 alle ore 08:47 Federico Fissore <feder...@fissore.org> ha scritto: > > Ciao > > no, l'ultima funzione sta rivalorizzando `par` ogni volta. Cambiala così e > riesegui
Ok, questo mi pare che riproduca la situazione: def prova(cambia, par=[]): if cambia: par.append('pippo') print("cambiata") print(par) prova(False) # [] prova(True) # cambiata \n ['pippo'] prova(False) # ['pippo'] Ma la cosa è un po' più sottile di come mi sembrava di avere capito, infatti: def prova(cambia, par=[]): if cambia: par = ['pippo'] print("cambiata") print(par) prova(False) # [] prova(True) # cambiata \n ['pippo'] prova(False) # [] def prova(cambia, par=''): if cambia: par = 'pippo' print("cambiata") print(par) prova(False) # '' prova(True) # cambiata \n 'pippo' prova(False) # '' Mi sfugge ancora qualcosa... Grazie, ciao. -- Daniele www.matematicadolce.eu Perché la scuola, invece di essere un luogo dove ci si allena a imparare, è un luogo dove si fa finta di sapere? _______________________________________________ Python mailing list Python@lists.python.it https://lists.python.it/mailman/listinfo/python