Wat is een Python-lijst?
Een lijst is precies zoals het klinkt, een container die verschillende Python-objecten bevat, dit kunnen gehele getallen, woorden, waarden enz. Zijn. Het is het equivalent van een array in andere programmeertalen. Het wordt weergegeven door vierkante haken (en dit is een van de attributen die het onderscheidt van tupels, die worden gescheiden door haakjes). Het is ook veranderlijk, dat wil zeggen, het kan worden gewijzigd of bijgewerkt; in tegenstelling tot tupels, die onveranderlijk zijn.
In deze python-tutorial leer je:
- Wat is een Python-lijst?
- Voorbeelden van Python-lijsten:
- Toegang krijgen tot waarden in lijsten
- Lijst snijden
- Lijsten bijwerken
- Lijstelementen verwijderen
- Lijstelementen toevoegen
- Lijst met ingebouwde functies (methoden)
- Door lijsten bladeren
- Maak een lijst van de begrippen
Voorbeelden van Python-lijsten:
Python-lijsten kunnen homogeen zijn, wat betekent dat ze hetzelfde type objecten kunnen bevatten; of heterogeen, inclusief verschillende soorten objecten.
Voorbeelden van homogene lijsten zijn:
list of integers = [1, 2, 3, 8, 33]list of animals = ['dog', 'cat', 'goat']list of names = ['John', 'Travis', 'Sheila']list of floating numbers = [2.2, 4.5, 9.8, 10.4]
Voorbeelden van heterogene lijsten zijn:
[2, 'cat', 34.33, 'Travis'][2.22, 33, 'pen']
Toegang krijgen tot waarden in lijsten
Om toegang te krijgen tot waarden in lijsten, kan de index van de objecten in de lijsten worden gebruikt. Een index in Python-lijsten verwijst naar de positie van een element binnen een geordende lijst. Bijvoorbeeld:
list = [3, 22, 30, 5.3, 20]
- De eerste waarde in de bovenstaande lijst, 3, heeft een index van 0
- De tweede waarde, 22, heeft een index van 1
- De derde waarde, 30, heeft een index van 2
enzovoort. Om toegang te krijgen tot elk van de waarden uit de lijst, zou u gebruiken:
list[0] to access 3list[1] to access 22list[2] to access 30list[3] to access 5.3list[4] to access 20
Het laatste lid van een lijst is ook toegankelijk via de index -1. Bijvoorbeeld,
list[-1] = 20
Lijst snijden
List slicing is de methode om een subset van een lijst te splitsen, en hiervoor worden ook de indices van de lijstobjecten gebruikt. Gebruik bijvoorbeeld hetzelfde lijstvoorbeeld hierboven;
list[:] = [3, 22, 30, 5.3, 20] (all the members of the list];list[1:3] = [22, 30] (members of the list from index 1 to index 3, without the member at index 3);list[:4] = [3, 22, 30, 5.3] (members of the list from index 0 to index 4, without the member at index 4)list[2:-1] = [30, 5.3] (members of the list from index 2, which is the third element, to the second to the last element in the list, which is 5.3).
Python-lijsten zijn exclusief aan de bovengrens, en dit betekent dat de laatste index tijdens het segmenteren van lijsten meestal wordt genegeerd. Dat is de reden
list[2:-1] = [30, 5.3], en niet [30, 5.3, 20]. Hetzelfde geldt voor alle andere voorbeelden van lijstschijven die hierboven worden gegeven.
Lijsten bijwerken
Stel dat u een lijst heeft = [natuurkunde, scheikunde, wiskunde], en u wilt de lijst wijzigen in [biologie, scheikunde, wiskunde], waardoor u effectief het lid op index 0 wijzigt. Dat kan eenvoudig worden gedaan door die index toe te wijzen aan de nieuw lid dat u wilt.
Dat is,
list = [physics, chemistry, mathematics]list[0] = biologyprint(list)
Output: [biologie, scheikunde, wiskunde]
Dit vervangt het lid op index 0 (natuurkunde) door de nieuwe waarde die je wilt (scheikunde). Dit kan worden gedaan voor elk lid of elke subset van de lijst die u wilt wijzigen.
Om nog een voorbeeld te geven; stel dat je een lijst hebt met de naam gehele getallen en die de getallen [2, 5, 9, 20, 27] bevat. Om 5 in die lijst te vervangen door 10, kun je dat doen met:
integers = [2, 5, 9, 20, 27]integers[1] = 10print(integers)>>> [2, 10, 9, 20, 27]
Om het laatste lid van de lijst met gehele getallen, namelijk 27, te vervangen door een vrij getal zoals 30,5, zou je het volgende gebruiken:
integers = [2, 5, 9, 20, 27]integers[-1] = 30.5print(integers)>>> [2, 5, 9, 20, 30.5]
Lijstelementen verwijderen
Er zijn drie Python-methoden om lijstelementen te verwijderen: list.remove (), list.pop () en del-operator. De verwijdermethode neemt het specifieke element dat moet worden verwijderd als een argument, terwijl pop en del de index van het te verwijderen element als argument nemen. Bijvoorbeeld:
lijst = [3, 5, 7, 8, 9, 20]
Om 3 (het eerste element) uit de lijst te verwijderen, zou je kunnen gebruiken:
- list.remove (3) of
- list.pop [0], of
- verwijder lijst [0]
Om 8, het item op index 3, uit de lijst te verwijderen, zou je kunnen gebruiken:
- list.remove (8), of
- lijst.pop [3]
Lijstelementen toevoegen
Om elementen aan een lijst toe te voegen, wordt de append-methode gebruikt, en dit voegt het element toe aan het einde van de lijst.
Bijvoorbeeld:
list_1 = [3, 5, 7, 8, 9, 20]list_1.append(3.33)print(list_1)>>> list_1 = [3, 5, 7, 8, 9, 20, 3.33]list_1.append("cats")print(list_1)>>> list_1 = [3, 5, 7, 8, 9, 20, 3.33, "cats"]
Lijst met ingebouwde functies (methoden)
Het volgende is een lijst met ingebouwde functies en methoden met hun beschrijvingen:
- len (lijst): dit geeft de lengte van de lijst als uitvoer. Bijvoorbeeld:
numbers = [2, 5, 7, 9]print(len(numbers))>>> 4
- max (lijst): retourneert het item in de lijst met de maximale waarde. Bijvoorbeeld:
numbers = [2, 5, 7, 9]print(max(numbers))>>> 9
- min (lijst): retourneert het item in de lijst met de minimumwaarde. Bijvoorbeeld:
numbers = [2, 5, 7, 9]print(min(numbers))>>> 2
- list (tuple): converteert een tuple-object naar een lijst. Bijvoorbeeld;
animals = (cat, dog, fish, cow)print(list(animals))>>> [cat, dog, fish, cow]
- list.append (element): voegt het element toe aan de lijst. Bijvoorbeeld;
numbers = [2, 5, 7, 9]numbers.append(15)print(numbers)>>> [2, 5, 7, 9, 15]
- list.pop (index): verwijdert het element op de gespecificeerde index uit de lijst. Bijvoorbeeld;
numbers = [2, 5, 7, 9, 15]numbers.pop(2)print(numbers)>>> [2, 5, 9, 15]
- list.remove (element): verwijdert het element uit de lijst. Bijvoorbeeld;
values = [2, 5, 7, 9]values.remove(2)print(values)>>> [5, 7, 9]
- list.reverse (): keert de objecten van de lijst om. Bijvoorbeeld;
values = [2, 5, 7, 10]values.reverse()print(values)>>> [10, 7, 5, 2]
- list.index (element): om de indexwaarde van een element in de lijst te krijgen. Bijvoorbeeld;
animals = ['cat', 'dog', 'fish', 'cow', 'goat']fish_index = animals.index('fish')print(fish_index)>>> 2
- sum (lijst): om de som van alle waarden in de lijst te krijgen, als de waarden allemaal getallen zijn (gehele getallen of decimalen). Bijvoorbeeld;
values = [2, 5, 10]sum_of_values = sum(values)print(sum_of_values)>>> 17
Als de lijst een element bevat dat geen getal is, zoals een tekenreeks, zou de som-methode niet werken. U krijgt een foutmelding met de tekst: " TypeError : niet-ondersteunde operandtype (s) voor +: 'int' en 'str'"
- list.sort (): om een lijst met gehele getallen, getallen met drijvende komma of strings in oplopende of aflopende volgorde te rangschikken. Bijvoorbeeld:
values = [1, 7, 9, 3, 5]# To sort the values in ascending order:values.sort()print(values)>>> [1, 3, 5, 7, 9]
Een ander voorbeeld:
values = [2, 10, 7, 14, 50]# To sort the values in descending order:values.sort(reverse = True)print(values)>>> [50, 14, 10, 7, 2]
Een lijst met strings kan ook worden gesorteerd, alfabetisch of op lengte van de strings. Bijvoorbeeld;
# to sort the list by length of the elementsstrings = ['cat', 'mammal', 'goat', 'is']sort_by_alphabet = strings.sort()sort_by_length = strings.sort(key = len)print(sort_by_alphabet)print(sort_by_length)>>> ['cat', 'goat', 'is', 'mammal']['is', 'cat', 'goat', 'mammal']
We kunnen dezelfde lijst alfabetisch sorteren door 'strings' te gebruiken.
Door lijsten bladeren
Het doorlopen van lijsten kan op dezelfde manier worden gedaan als elke andere loopfunctie in Python. Op deze manier kan een methode op meerdere elementen van een lijst tegelijk worden uitgevoerd. Bijvoorbeeld:
lijst = [10, 20, 30, 40, 50, 60, 70].
Om alle elementen van deze lijst te doorlopen, en laten we zeggen, voeg 10 toe aan elk element:
for elem in list:elem = elem + 5print(elem)>>>>15253545556575
Om de eerste drie elementen van de lijst te doorlopen en ze allemaal te verwijderen;
for elem in list[:3]:list.remove(elem)>>>list = [40, 50, 60, 70]
Om door het 3 e (index 2) naar het laatste element op de lijst te lopen, en ze toe te voegen aan een nieuwe lijst met de naam new_list:
new_list = []for elem in list[2:]:new_list.append(elem)print(“New List: {}”.format(new_list))Output:New List: [30, 40, 50, 60, 70]
Op deze manier kan elke methode of functie worden toegepast op de leden van een lijst om een bepaalde bewerking uit te voeren. U kunt alle leden van de lijst doorlopen of een subset van de lijst doorlopen met behulp van lijstsplitsing.
Lijstbegrip
Lijstbegrip zijn Python-functies die worden gebruikt voor het maken van nieuwe reeksen (zoals lijsten, woordenboeken, enz.) Met behulp van reeksen die al zijn gemaakt. Ze helpen om langere loops te verminderen en maken uw code gemakkelijker te lezen en te onderhouden.
Bijvoorbeeld; stel dat je een lijst wilt maken die de vierkanten van alle getallen van 1 tot 9 bevat:
list_of squares = []for int in range(1, 10):square = int ** 2list_of_squares.append(square)print(list_of_squares)List_of_squares using for loop:[1, 4, 9, 16, 25, 36, 49, 64, 81]
Om hetzelfde te doen met lijstbegrip:
list_of_squares_2 = [int**2 for int in range(1, 10)]print('List of squares using list comprehension: {}'.format(list_of_squares_2))Output using list comprehension:[1, 4, 9, 16, 25, 36, 49, 64, 81]
Zoals hierboven te zien is, is het schrijven van de code met behulp van lijstbegrip veel korter dan het gebruik van traditionele for-loops, en is het ook sneller. Dit is slechts één voorbeeld van het gebruik van lijstbegrip in plaats van for-lussen, maar dit kan worden gerepliceerd en gebruikt op veel plaatsen waar for-lussen ook kunnen worden gebruikt. Soms is het gebruik van een for-lus de betere optie, vooral als de code complex is, maar in veel gevallen zal lijstbegrip uw codering gemakkelijker en sneller maken.
Hieronder staat een tabel met enkele lijstfuncties en methoden en hun beschrijvingen.
Ingebouwde functies
FUNCTIE | OMSCHRIJVING |
Ronde() | Rondt het getal dat als argument is doorgegeven af op een opgegeven aantal cijfers en retourneert de drijvende-kommawaarde |
Min () | retourneer het minimumelement van een bepaalde lijst |
Max () | retourneert het maximale element van een bepaalde lijst |
len () | Retourneert de lengte van de lijst |
Opsommen () | Deze ingebouwde functie genereert zowel de waarden als de indexen van items in een iterable, dus we hoeven niet handmatig te tellen |
Filter() | test of elk element van een lijst waar is of niet |
Lambda | Een uitdrukking die kan verschijnen op plaatsen waar een def (voor het maken van functies) niet syntactisch is, binnen een letterlijke lijst of de aanroepargumenten van een functie |
Kaart() | geeft een lijst met de resultaten terug na het toepassen van de gegeven functie op elk item van een gegeven iterabele |
Accumuleren() | pas een bepaalde functie toe die in zijn argument is doorgegeven aan alle lijstelementen, geeft een lijst met de tussenresultaten |
Som() | Retourneert de som van alle getallen in de lijst |
Cmp () | Dit wordt gebruikt om twee lijsten te vergelijken en geeft als resultaat 1 als de eerste lijst groter is dan de tweede lijst. |
Invoegen | Voeg element toe aan lijst op een bepaalde positie |
Lijst methoden
FUNCTIE | OMSCHRIJVING |
Toevoegen () | Voegt een nieuw item toe aan het einde van de lijst |
Doorzichtig() | Verwijdert alle items uit de lijst |
Kopiëren() | Retourneert een kopie van de originele lijst |
Uitbreiden() | Voeg veel items toe aan het einde van de lijst |
Tellen () | Retourneert het aantal keren dat een bepaald item in een lijst voorkomt |
Inhoudsopgave() | Retourneert de index van een specifiek element van een lijst |
Knal() | Verwijdert item uit de lijst bij een bepaalde index (verwijderen op positie) |
Verwijderen() | Verwijdert gespecificeerd item uit de lijst (verwijderen op waarde) |
Omgekeerde() | In-place omkeringsmethode die de volgorde van de elementen van de lijst omkeert |
Overzicht
- Een lijst is precies hoe het klinkt, een container die verschillende Python-objecten bevat, zoals gehele getallen, woorden, waarden, enz.
- Python-lijsten kunnen homogeen zijn, wat betekent dat ze hetzelfde type objecten kunnen bevatten; of heterogeen, met verschillende soorten objecten.
- Om toegang te krijgen tot waarden in lijsten, kan de index van de objecten in de lijsten worden gebruikt.
- List slicing is de methode om een subset van een lijst te splitsen, en hiervoor worden ook de indices van de lijstobjecten gebruikt.
- Drie methoden voor het verwijderen van lijstelementen zijn: 1) list.remove (), 2) list.pop (), en 3) del operator
- Append-methode wordt gebruikt om elementen toe te voegen. Dit voegt het element toe aan het einde van de lijst.
- De lusmethode van het Python-programma kan tegelijkertijd op meerdere elementen van een gegevenslijst worden uitgevoerd.
- Lijstbegrip zijn Python-functies die worden gebruikt voor het maken van nieuwe reeksen (zoals lijsten, woordenboeken, enz.) Met behulp van reeksen die al zijn gemaakt.