Několik cyklů v list comprehension v Pythonu
Práce s list comprehension umožňuje napsat několik cyklů pro generování nového seznamu. První zadaný cyklus bude vnější, v něm bude spuštěn druhý napsaný cyklus. To znamená, že druhý cyklus bude vnořen do prvního.
Vytvořme seznam n-tic. K
tomu nejprve napíšeme dvě proměnné i
a j, uzavřené v kulatých závorkách,
které označují n-tici. Dále spustíme cyklus
s proměnnou i, která by měla
generovat první číslo z n-tice v
rozsahu od 1 do 3. Poté
napíšeme cyklus, kde druhé číslo j
je generováno od 1 do 2:
lst = [(i, j) for i in range(1, 4) for j in range(1, 3)]
print(lst)
Výsledek provedení kódu:
[(1, 1), (1, 2), (2, 1), (2, 2), (3, 1), (3, 2)]
Jsou dány dva seznamy:
lst1 = ['1', '2']
lst2 = ['a', 'b', 'c']
Pomocí list comprehension z nich vytvořte nový seznam:
[('1', 'a'), ('1', 'b'), ('1', 'c'), ('2', 'a'), ('2', 'b'), ('2', 'c')]