[Python] Confronto dizionari.
Federico Fissore
federico a fsfe.org
Mar 2 Feb 2021 12:31:24 CET
Gabriele Battaglia wrote on 02/02/21 12:13:
> Ma allora che differenza c'è fra c=d e c=d.copy()
> Se, come dici, ci mette dentro tutto ciò che contiene l'origine senza
> modificarli... allora è una semplice assegnazione come quella
> dell'operatore "=", giusto?
la differenza è che copy ti da un dizionario nuovo, a cui puoi togliere
e aggiungere chiavi senza modificare il vecchio
Assegnando:
>>> a = {'ciao':'mondo'}
>>> a
{'ciao': 'mondo'}
>>> b = a
>>> b['ciao'] = 'gente'
>>> a
{'ciao': 'gente'}
>>> b
{'ciao': 'gente'}
Copiando:
>>> a = {'ciao':'mondo'}
>>> a
{'ciao': 'mondo'}
>>> b = a.copy()
>>> b['ciao'] = 'gente'
>>> a
{'ciao': 'mondo'}
>>> b
{'ciao': 'gente'}
>
> L'ho fatto e funziona! Però, cosa significa [0]?
>
E' un riferimento a un link che ho messo a fondo della mail, al fine di
rendere il testo della mail stessa più leggibile
> C'è qualche motivo, di carattere generale... per cui non si dovrebbe fare?
> Chiedo per imparare. :)
Nessuno a parte il consumo di memoria e un po' di CPU: un'ottimizzazione
prematura che va bene se il codice della tua funzione è semplice, ma se
è complesso come dici forse non ne vale la pena
federico
Maggiori informazioni sulla lista
Python