Python Lijstbegrip Uitgelegd Met Voorbeelden
Lijstbegrip biedt een bondige manier om lijsten te maken in Python. Ze zijn leesbaarder en vaak efficiënter dan traditionele loops. Dit artikel onderzoekt wat lijstbegrip is, hoe het werkt en geeft voorbeelden om het gebruik ervan te illustreren.
Wat is een lijstbegrip?
Een lijstbegrip is een compacte manier om alle of een deel van de elementen in een verzameling te verwerken en een lijst met de resultaten te retourneren. De syntaxis van een lijstbegrip is:
[expression for item in iterable if condition]
Hierbij is expression
het huidige item in de iteratie, maar het is ook de uitkomst, die u kunt manipuleren voordat het als een lijstitem eindigt. iterable
is de verzameling waar u doorheen loopt, en condition
is een optioneel filter dat alleen items opneemt die aan de voorwaarde voldoen.
Basisvoorbeelden
Een lijst met vierkanten maken
Om een lijst met kwadraten van getallen van 0 tot en met 9 te maken, kunt u als volgt een lijstbegripmethode gebruiken:
numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
squares = [x ** 2 for x in numbers]
print(squares)
Uitvoer:
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
Items filteren
U kunt ook een voorwaarde toevoegen om items te filteren. Bijvoorbeeld om alleen de even getallen uit de lijst te krijgen:
even_squares = [x ** 2 for x in numbers if x % 2 == 0]
print(even_squares)
Uitvoer:
[0, 4, 16, 36, 64]
Een lijst met lijsten afvlakken
Als u een lijst met lijsten hebt en deze wilt afvlakken, kunt u een lijstbegrip gebruiken:
list_of_lists = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
flattened = [item for sublist in list_of_lists for item in sublist]
print(flattened)
Uitvoer:
[1, 2, 3, 4, 5, 6, 7, 8, 9]
Geavanceerde voorbeelden
Functies toepassen
U kunt functies toepassen binnen een lijstbegrip. Bijvoorbeeld, om een lijst met strings naar hoofdletters te converteren:
words = ['hello', 'world', 'python']
uppercase_words = [word.upper() for word in words]
print(uppercase_words)
Uitvoer:
['HELLO', 'WORLD', 'PYTHON']
Geneste begripsvorming
Lijstbegrip kan worden genest. Bijvoorbeeld, om een lijst van tupels (i, j) te maken waarbij i en j beide elementen zijn van twee lijsten:
list1 = [1, 2, 3]
list2 = ['a', 'b', 'c']
pairs = [(i, j) for i in list1 for j in list2]
print(pairs)
Uitvoer:
[(1, 'a'), (1, 'b'), (1, 'c'), (2, 'a'), (2, 'b'), (2, 'c'), (3, 'a'), (3, 'b'), (3, 'c')]
Conclusie
Lijstbegrip biedt een krachtige en bondige manier om lijsten te genereren in Python. Ze kunnen uw code vereenvoudigen en leesbaarder maken door meerdere regels loopcode te vervangen door een enkele regel begrip. Oefen het gebruik van lijstbegrip om vertrouwder te raken met hun syntaxis en mogelijkheden.