[Python] Il dilemma degli array mutabili
Manlio Perillo
manlio.perillo a gmail.com
Mer 18 Set 2013 15:59:34 CEST
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 18/09/2013 15:05, Piergiuliano Bossi wrote:
> Un'altra cosa che mi spiazza e' la seguente: sono abituato a
> manipolare e trasformare array immutabili, in cui ogni
> trasformazione ti ritorna una copia dell'array di partenza, per
> cui ci puoi fare le piu' immani schifezze senza effetti
> collaterali. [...] Per cui la mia domanda e', quando volete
> manipolare strutture tipo array senza mutarle o mutandole in copia:
> 1) le copiate all'inizio come dicevo sopra
Che io ricordi, non ho mai usato copy/deepcopy in vita mia (forse una
volta).
Se devo copiare un dizionario faccio d.copy(), con una lista v[:].
> 2) non usate liste, ma tuple, ma poi come compensate la mancanza di
> append e remove (sembra una contraddizione in termini ma non lo e',
> basterebbe che append e remove ritornino nuove strutture dati,
> copie dell'originale)
Le tuple non sono liste immutabili.
E' lo stesso problema con le bytestring e le string in Python 3.x, in
cui le bytestring non rappresentano del testo e quindi non
implementano gli stessi metodi che hanno in Python 2.x (anche se mi
sembra ci abbiano in parte ripensato).
> 3) vi toccate (cit)
>
Se devi modificare un parametro, e le modifiche devono essere
"private", si copia, altrimenti sei un criminale/sprovveduto.
> [...]
Ciao Manlio
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)
Comment: Using GnuPG with Icedove - http://www.enigmail.net/
iEYEARECAAYFAlI5scUACgkQscQJ24LbaUTYWwCfb8WGO7cvXAJuX9EE/fWH/z6L
gy0AnAudOj9O3usU9rP90q78PlAqI7+F
=MLJs
-----END PGP SIGNATURE-----
Maggiori informazioni sulla lista
Python