Passaggio di oggetti come parametri in Python
Le variabili che contengono oggetti (liste, insiemi, tuple, dizionari) nelle funzioni sono passate per riferimento. Riscriviamo il codice nella funzione in modo che il primo elemento della variabile passata venga cambiato in un punto esclamativo. E sotto la funzione dichiariamo una variabile il cui valore è una lista:
def func(tst):
tst[0] = '!'
print(tst)
lst = [1, 2, 3, 4, 5]
Poiché le liste sono passate per riferimento,
quando si chiama la funzione cambierà anche il valore di lst
nell'ambito globale:
func(lst) # visualizzerà ['!', 2, 3, 4, 5]
print(lst) # visualizzerà ['!', 2, 3, 4, 5]
Quale sarà il risultato dell'esecuzione del seguente codice:
def func(lst):
lst[0] = '!'
lst = [1, 2, 3, 4, 5]
func(lst)
print(lst)
Quale sarà il risultato dell'esecuzione del seguente codice:
def func(lst):
lst[0] = '!'
lst = [1, 2, 3, 4, 5]
lst = func(lst)
print(lst)
Quale sarà il risultato dell'esecuzione del seguente codice:
def func(lst):
lst = '!'
lst = [1, 2, 3, 4, 5]
func(lst[0])
print(lst)
Quale sarà il risultato dell'esecuzione del seguente codice:
def func(dct):
for key in dct.keys():
dct[key] += 2
dct = {
'a': 1,
'b': 2,
'c': 3,
}
func(dct)
print(dct)