Forum
>>
Principianti
>>
[Risolto] Sul funzionamento di sort()
Pagina: 1
Esegui il login per scrivere una risposta.
Pagina: 1
Scritto da h |
2015-12-03 12:43:06 - [Risolto] Sul funzionamento di sort()
|
Salve a tutti,
vorrei capire il corretto funzionamento di sort(), in particolare vorrei capire perchè succede questo: >>> a=[2,4,5,1] >>> a [2, 4, 5, 1] >>> b=a >>> b [2, 4, 5, 1] >>> b.sort() >>> b [1, 2, 4, 5] >>> a [1, 2, 4, 5] Perchè nel momento in cui applico sort() alla lista "b" copiata a partire da "a", sort() modifica anche la lista "a"? --- Ultima modifica di h in data 2015-12-03 12:58:20 --- |
|
Scritto da h |
2015-12-03 12:58:05 - Re: Sul funzionamento di sort()
|
Ho risolto...
>>> a=[2,4,5,1] >>> b=a[:] >>> b [2, 4, 5, 1] >>> b.sort() >>> b [1, 2, 4, 5] >>> a [2, 4, 5, 1]un saluto a tutti... |
|
Scritto da Daniele aka Palmux |
2015-12-03 13:33:51 - Re: Sul funzionamento di sort()
|
Qui sort() non c'entra, devi capire correttamente l'assegnamento delle varie etichette ad un oggetto e ti consiglio di usare id() in modo che tu possa capire subito a quale oggetto stanno facendo riferimento.
Ti faccio un esempio: >>> a = [2,4,5,1] >>> id(a) 139784997827648 >>> b = a >>> id(b) 139784997827648Come puoi facilmente intuire, le due etichette a e b si stanno riferendo allo stesso stesso oggetto, in questo caso [2,4,5,1], quindi ecco spiegato il perché del comportamento da te descritto. Ciao. Daniele |
Pagina: 1
Esegui il login per scrivere una risposta.