Ben tornato.
Continuiamo ora con le liste.
Finora, le parentesi quadre le abbiamo già viste, giusto?
Li abbiamo visti quando si lavora con le stringhe e proprio come le liste di stringhe sono abbastanza simili in quanto possiamo usare
l'affettatura delle liste.
Se ricordi, con lo slicing delle stringhe, avevamo cose come hello e potevamo assegnare una stringa, diciamo una stringa variabile,
e potevamo fare una stringa e poi affettare.
Quindi fai qualcosa del genere.
Dove abbiamo avuto l'inizio, lo stop e poi il passaggio in modo da iniziare con indice zero e finire con
indice due.
E poi procedi uno per uno, quindi anche l'affettatura dell'elenco è disponibile per noi, quindi rendiamo questo carrello un po' più grande
e in realtà puoi semplicemente rendere le cose più pulite formattandolo in questo modo.
Va bene, quindi cosa dovremmo aggiungere al nostro carrello?
Aggiungeremo anche alcuni giocattoli e poi sai cosa, Amazon fa la spesa ora.
Quindi aggiungiamo dell'uva deliziosa.
Stupendo.
Ora, diciamo che volevo ottenere ogni singolo articolo nel carrello mentre lo facciamo semplicemente.
E abbiamo l'intero elenco, ma usiamo un po' di suddivisione in liste, diciamo che volevo prendere dal primo elemento
al secondo elemento se faccio clic su Esegui.
Prendo quaderni e occhiali da sole.
Forse voglio andare fino in fondo, ma salta ogni secondo.
Compro quaderni e giocattoli.
Abbiamo iniziato da zero.
Passiamo ai giocattoli e passiamo oltre e abbiamo finito.
Stupendo.
E questo è qualcosa che abbiamo già visto parlando con gli archi.
OK, ma qui è dove diventa interessante.
Ricorda come ho detto che le stringhe sono immutabili.
Ciò significa che non possiamo cambiarli.
Destra.
E ne abbiamo parlato quando abbiamo avuto una stringa come ciao, non potevo fare gret zero uguale a, diciamo
Z.
Otterrei un errore qui.
Ottengo che l'oggetto SDR non supporta l'assegnazione dell'elemento.
È immutabile.
Ma la cosa interessante con le liste è che sono mutevoli.
Quindi se cambio il mio carrello Amazon.
E dì questo, sai una cosa, non voglio davvero i taccuini quindi prendo il primo
oggetto, che è il taccuino e invece del taccuino io cosa vogliamo?
Diremo che vogliamo un nuovo laptop.
È un grande aggiornamento.
Quando stampo questo carrello Amazon.
Guarda qui, sono in grado di modificare questa lista.
E non mi ha dato un'aria in quel senso, le liste sono immutabili, le sostituiamo semplicemente sullo scaffale della memoria dei
nostri notebook e io dico, ehi, cambialo in laptop, e ce lo lasciano fare.
OK, quindi è fantastico.
Ma proviamo qualcosa qui.
E se creo un'altra stampa qui e nel carrello Amazon, userò l'affettatura dell'elenco per diciamo che voglio l'elemento
dall'indice di uno fino all'indice di tre.
Eseguiamo questo e vediamo cosa succede.
Prova e indovina.
È quello che ti aspettavi?
Esaminiamo questo codice quando arriviamo alla riga dieci, prendiamo il carrello Amazon, che è stato aggiornato con
il laptop e prendo l'articolo uno.
Due, tre, quindi questi sono gli occhiali da sole.
Ai giocattoli, quindi zero uno due, e poi ci fermiamo a tre.
Giusto per rendere questo più facile da capire, iniziamo con zero qui.
In modo che vediamo che il laptop è stato cambiato.
E poi qui nel secondo, sulla riga 11, stampiamo il carrello Amazon.
Ma aspetta un secondo, questo elenco non è cambiato, e questo perché con l'affettatura dell'elenco, stiamo creando un nuovo
elenco, una nuova copia di questo elenco.
Quindi qui stiamo creando un elenco completamente nuovo in modo che possa effettivamente assegnarlo a una variabile.
Il nuovo carrello sarà il carrello Amazon.
E facciamo la stessa cosa qui.
E New Kaat è un elenco completamente nuovo da solo, potrei cambiare una nuova carta, diciamo zero in, diciamo
gomma.
E se stampo questo.
Vedete che ho due nuovi elenchi separati, ma un elenco è modificabile perché posso cambiare tutto
ciò che è nell'indice ogni volta che voglio, e ogni volta che eseguiamo l'affettatura dell'elenco, creiamo una nuova copia di quell'elenco.
Ma ho una domanda difficile per te qui, cosa succede se lo faccio?
Se eseguo questo.
Hmm.
Hai visto che?
Invece di tagliare la mia lista, ho semplicemente detto che la nuova carta sarà uguale al carrello Amazon.
E ho cambiato un nuovo indice KAAT da zero a uguale a Gump, ma ora anche il mio carrello Amazon è stato modificato.
Perché?
E questa è una domanda un po' complicata che potresti incontrare in un'intervista.
Il motivo è che in questo momento, il modo in cui ho fatto uguale significa che, ehi, la nuova carta sarà uguale alla
carta Amazon.
E a cosa corrisponde il carrello di Amazon?
Bene, il carrello di Amazon indica da qualche parte nella memoria nelle nostre macchine che dice, ehi, questo è il carrello
di Amazon.
Quindi perché qui non stiamo copiando l'elenco.
Invece, stiamo solo dicendo, ehi, il valore della nuova carta è qualunque cosa sia nella memoria del carrello di Amazon.
Ora, quando modifichiamo Nikhat, stiamo semplicemente cambiando il carrello Amazon da qui.
Quindi questo è un concetto importante.
Se vuoi, diciamo, copiare un elenco, quindi fai qualcosa del genere.
Dove hai copiato l'intero elenco e questo è qualcosa che vedrai molto nelle basi di codice.
Ma questa linea sta dicendo, ehi, voglio creare una copia affettare l'elenco di utilizzo per copiare questo carrello Amazon e sarà uguale
al nuovo carrello in modo che ora se lo eseguo.
Vedrai che il carrello Amazon originale rimane lo stesso, ma il nuovo carrello ora è qualcosa di diverso.
Questa è una soluzione rapida.
Devono solo abituarsi, ma è un concetto importante, l'idea di copiare piuttosto che modificare l'elenco, ed è
qualcosa che esploreremo un po' di più nei prossimi due video.
Per ora, prenditi una pausa e vedrò nella prossima.
Ciao.