| 
                
                
                 
 
	
		| Precedente :: Successivo |  
		| Autore | Messaggio |  
		| mdweb Dio maturo
 
  
  
 Registrato: 18/12/07 16:59
 Messaggi: 4412
 
 
 | 
			
				|  Inviato: 26 Dic 2008 22:01    Oggetto: Python:accorgimenti liste e tuple |   |  
				| 
 |  
				| A differenza delle stringhe,Le lista non creano un unico identificatore. 
 
  	  | Codice: |  	  | >>> a=['a','b','c']
 >>> b=['a','b','c']
 | 
 Queste liste sono uguali ma abbiamo un diverso identificatore:
 
 
  	  | Codice: |  	  | >>> id(a)
 13592496
 >>> id(b)
 13590656
 | 
 
 Il diagramma di stack è:
 a--->['a','b','c']
 b--->['a','b','c']
 
 Alias
 Le variabile si riferiscono agli oggetti quindi se abbiamo:
 
  	  | Codice: |  	  | >>> a=['a','b','c']
 >>> b=a
 | 
 
 Gli identificatori sono uguali:
 
  	  | Codice: |  	  | >>> id(a)
 13591456
 >>> id(b)
 13591456
 | 
 
 Il diagramma di stato è:
 a  |________ >13591456
 b  |
 
 Dobbiamo stare molto attenti perchè se modifichiamo a cambierà anche b.
 |  |  
		| Top |  |  
		|  |  
		| mdweb Dio maturo
 
  
  
 Registrato: 18/12/07 16:59
 Messaggi: 4412
 
 
 | 
			
				|  Inviato: 26 Dic 2008 22:10    Oggetto: Parametri di tipo lista |   |  
				| 
 |  
				| Se abbiamo questa funzione: 
  	  | Codice: |  	  | def Lista_T(lista):
 return lista[0]
 
 | 
 e la chiamiamo cosi:
 [/code]
 
 
  	  | Codice: |  	  | >>>Numeri=[1,2,3] >>>Testa(Numeri)
 | 
 
 Il risultato sarà:1
 
 Il diagramma di stato è:
 _main_  |Numeri|____________>[1,2,3]
 Lista_T  |lista|
 
 Se una funzione modificia una lista (ad esempio toglie un elemento viene modificata la lista stessa e non la sua copia.
 
 Quando una funzione ritorna una lista restituiamo una lista nuova.[/code]
 |  |  
		| Top |  |  
		|  |  
		| mdweb Dio maturo
 
  
  
 Registrato: 18/12/07 16:59
 Messaggi: 4412
 
 
 | 
			
				|  Inviato: 26 Dic 2008 22:40    Oggetto: Funzioni e tuple |   |  
				| 
 |  
				| Le funzione posso avere come valore di ritorno anche tuple.Esempio: 
  	  | Codice: |  	  | def Variabili_Intverite(x,y):
 return y,x
 
 | 
 Il valore può essere assegnato alle variabili.
 
 E sconsigliato usare le funzione per fare questa operazione meglio usare un semplice:
 
 
 Perchè si rischia di scontrarsi con  problemi relativi allo scope delle variabili.
 |  |  
		| Top |  |  
		|  |  
		|  |  
  
	| 
 
 | Non puoi inserire nuovi argomenti Non puoi rispondere a nessun argomento
 Non puoi modificare i tuoi messaggi
 Non puoi cancellare i tuoi messaggi
 Non puoi votare nei sondaggi
 
 |  
 
 |