[Python] Assegnamento e liste
    Diego Barrera 
    diegonebarrera a yahoo.it
       
    Mar 17 Gen 2012 15:47:04 CET
    
    
  
Ciao a tutti
Ho creato questa classe:
class Traduttore:
     """
     La classe astratta 'Traduttore' definisce un oggetto di tipo
     traduttore.
     La classe rappresenta ogni oggetto in grado di leggere da qualsiasi
     sorgente e scrivere in qualsiasi destinazione: DB, csv, xml, html...
     Ogni sottoclasse deve avere un lettore e uno scrittore appropriato
     alla sorgente e alla destinazione.
     """
     def __init__(self,tipo):
         if tipo=='fix_csv2csv':
             self.lettore=Lettore_fix_csv()
             self.scrittore=Scrittore_csv()
             self.dati=self.scrittore.dati=self.lettore.dati
Sia la classe lettore che quella scrittore hanno una proprieta' *dati* 
che non e' altro che una lista.
Da quello che sapevo, l'ultimo assegnamento dovrebbe far puntare
self.dati, self.lettore.dati, e self.scrittore.dati alla stessa lista...
invece piu' avanti utilizzo una cosa tipo
self.dati=self.dati[:-1]
da cui mi rendo conto che l'unica lista modificata e' self.dati
Perche'?
invece usando
del self.dati[-1:]
modifico tutte e tre!!
Chiaramente ho risolto, ma perche' si comporta cosi'?
Grazie mille
diego
    
    
       
       Maggiori informazioni sulla lista 
	       Python