[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