Cicli multipli nella list comprehension in Python
Lavorare con la list comprehension permette di specificare più cicli per generare una nuova lista. Il primo ciclo specificato sarà quello esterno, all'interno del quale verrà eseguito il secondo ciclo specificato. Ciò significa che il secondo ciclo sarà annidato all'interno del primo.
Creiamo una lista di tuple. Per
farlo, prima scriviamo due variabili i
e j, racchiuse tra parentesi tonde,
che denotano una tupla. Successivamente avviamo un ciclo
con la variabile i, che deve
generare il primo numero della tupla
nell'intervallo da 1 a 3. Poi
scriviamo un ciclo, dove il secondo numero j
è generato da 1 a 2:
lst = [(i, j) for i in range(1, 4) for j in range(1, 3)]
print(lst)
Risultato dell'esecuzione del codice:
[(1, 1), (1, 2), (2, 1), (2, 2), (3, 1), (3, 2)]
Sono date due liste:
lst1 = ['1', '2']
lst2 = ['a', 'b', 'c']
Utilizzando la list comprehension, crea da esse una nuova lista:
[('1', 'a'), ('1', 'b'), ('1', 'c'), ('2', 'a'), ('2', 'b'), ('2', 'c')]