Flere løkker i list comprehension i Python
Arbejde med list comprehension gør det muligt at skrive flere løkker for at generere en ny liste. Den første angivne løkke vil være den ydre, hvori den anden angivne løkke vil blive startet. Det betyder, at den anden løkke vil være indlejret i den første.
Lad os danne en liste af tupler. For
at gøre dette skal vi først skrive to variable i
og j, indesluttet i runde parenteser,
som angiver en tuple. Derefter starter vi en løkke
med variablen i, som skal
generere det første tal fra tuplen i
området fra 1 til 3. Derefter
skriver vi en løkke, hvor det andet tal j
genereres fra 1 til 2:
lst = [(i, j) for i in range(1, 4) for j in range(1, 3)]
print(lst)
Resultatet af udførelsen af koden:
[(1, 1), (1, 2), (2, 1), (2, 2), (3, 1), (3, 2)]
Givet to lister:
lst1 = ['1', '2']
lst2 = ['a', 'b', 'c']
Lav en ny liste ud fra dem ved hjælp af list comprehension:
[('1', 'a'), ('1', 'b'), ('1', 'c'), ('2', 'a'), ('2', 'b'), ('2', 'c')]