Hva er en Python List?
En liste er nøyaktig hvordan det høres ut, en beholder som inneholder forskjellige Python-objekter, som kan være heltall, ord, verdier osv. Det tilsvarer en matrise i andre programmeringsspråk. Den er representert med firkantede parenteser (og dette er en av attributtene som skiller den fra tuplene, som er atskilt med parenteser). Det er også foranderlig, det vil si at det kan modifiseres eller oppdateres; i motsetning til tupler, som er uforanderlige.
I denne pythonopplæringen lærer du:
- Hva er en Python List?
- Eksempler på Python-lister:
- Tilgang til verdier innenfor lister
- Listeskiver
- Oppdaterer lister
- Slette listeelementer
- Legg til listeelementer
- Liste over innebygde funksjoner (metoder)
- Løping gjennom lister
- Listeforståelser
Eksempler på Python-lister:
Python-lister kan være homogene, noe som betyr at de kan inneholde samme type objekter; eller heterogen, inkludert forskjellige typer objekter.
Eksempler på homogene lister inkluderer:
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]
Eksempler på heterogene lister inkluderer:
[2, 'cat', 34.33, 'Travis'][2.22, 33, 'pen']
Tilgang til verdier innenfor lister
For å få tilgang til verdier i lister, kan indeksen til objektene i listene brukes. En indeks i Python-lister refererer til plasseringen av et element i en ordnet liste. For eksempel:
list = [3, 22, 30, 5.3, 20]
- Den første verdien i listen ovenfor, 3, har en indeks på 0
- Den andre verdien, 22, har en indeks på 1
- Den tredje verdien, 30, har en indeks på 2
og så videre. For å få tilgang til hver av verdiene fra listen, bruker du:
list[0] to access 3list[1] to access 22list[2] to access 30list[3] to access 5.3list[4] to access 20
Det siste medlemmet av en liste kan også nås ved å bruke indeksen -1. For eksempel,
list[-1] = 20
Listeskiver
Listesnitting er metoden for å dele et delsett av en liste, og indeksene til listeobjektene brukes også til dette. For eksempel ved å bruke samme listeeksempel ovenfor;
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-lister er eksklusive øvre grenser, og dette betyr at den siste indeksen under listesnitting vanligvis blir ignorert. Det er hvorfor
list[2:-1] = [30, 5.3], og ikke [30, 5.3, 20]. Det samme gjelder for alle de andre eksempler på listeoppdelingen som er gitt ovenfor.
Oppdaterer lister
La oss si at du har en liste = [fysikk, kjemi, matematikk], og at du vil endre listen til [biologi, kjemi, matematikk], og effektivt endre medlemmet ved indeks 0. Det kan enkelt gjøres ved å tildele indeksen til nytt medlem du vil ha.
Det er,
list = [physics, chemistry, mathematics]list[0] = biologyprint(list)
Produksjon: [biologi, kjemi, matematikk]
Dette erstatter medlemmet ved indeks 0 (fysikk) med den nye verdien du vil ha (kjemi). Dette kan gjøres for ethvert medlem eller delmengde av listen du vil endre.
For å gi et annet eksempel; la oss si at du har en liste som heter heltall og inneholder tallene [2, 5, 9, 20, 27]. For å erstatte 5 i listen med 10, kan du gjøre det med:
integers = [2, 5, 9, 20, 27]integers[1] = 10print(integers)>>> [2, 10, 9, 20, 27]
For å erstatte det siste medlemmet av listen over heltall, som er 27, med et ledig tall som 30,5, vil du bruke:
integers = [2, 5, 9, 20, 27]integers[-1] = 30.5print(integers)>>> [2, 5, 9, 20, 30.5]
Slette listeelementer
Det er tre Python-metoder for å slette listeelementer: list.remove (), list.pop () og del-operator. Fjern metoden tar det bestemte elementet som skal fjernes som et argument mens pop og del tar indeksen til elementet som skal fjernes som et argument. For eksempel:
liste = [3, 5, 7, 8, 9, 20]
For å slette 3 (det første elementet) fra listen kan du bruke:
- list.remove (3) eller
- list.pop [0], eller
- sletteliste [0]
For å slette 8, elementet i indeks 3, fra listen, kan du bruke:
- list.remove (8), eller
- list.pop [3]
Legg til listeelementer
For å legge til elementer i en liste brukes append-metoden, og dette legger elementet til slutten av listen.
For eksempel:
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"]
Liste over innebygde funksjoner (metoder)
Følgende er en liste over innebygde funksjoner og metoder med beskrivelser:
- len (liste): dette gir lengden på listen som utdata. For eksempel:
numbers = [2, 5, 7, 9]print(len(numbers))>>> 4
- maks (liste): returnerer elementet i listen med maksimumsverdien. For eksempel:
numbers = [2, 5, 7, 9]print(max(numbers))>>> 9
- min (liste): returnerer elementet i listen med minimumsverdien. For eksempel:
numbers = [2, 5, 7, 9]print(min(numbers))>>> 2
- liste (tuple): konverterer et tupelobjekt til en liste. For eksempel;
animals = (cat, dog, fish, cow)print(list(animals))>>> [cat, dog, fish, cow]
- list.append (element): legger elementet til listen. For eksempel;
numbers = [2, 5, 7, 9]numbers.append(15)print(numbers)>>> [2, 5, 7, 9, 15]
- list.pop (indeks): fjerner elementet ved den angitte indeksen fra listen. For eksempel;
numbers = [2, 5, 7, 9, 15]numbers.pop(2)print(numbers)>>> [2, 5, 9, 15]
- list.remove (element): sletter elementet fra listen. for eksempel;
values = [2, 5, 7, 9]values.remove(2)print(values)>>> [5, 7, 9]
- list.reverse (): reverserer objektene på listen. For eksempel;
values = [2, 5, 7, 10]values.reverse()print(values)>>> [10, 7, 5, 2]
- list.index (element): for å få indeksverdien til et element i listen. For eksempel;
animals = ['cat', 'dog', 'fish', 'cow', 'goat']fish_index = animals.index('fish')print(fish_index)>>> 2
- sum (liste): for å få summen av alle verdiene i listen, hvis verdiene er alle tall (heltall eller desimaler). For eksempel;
values = [2, 5, 10]sum_of_values = sum(values)print(sum_of_values)>>> 17
Hvis listen inneholder et element som ikke er et tall, for eksempel en streng, fungerer ikke summetoden. Du får en feilmelding som sier: " TypeError : ikke-støttede operand-typer for +: 'int' og 'str'"
- list.sort (): for å ordne en liste over heltall, flytende tall eller strenger, i stigende eller synkende rekkefølge. For eksempel:
values = [1, 7, 9, 3, 5]# To sort the values in ascending order:values.sort()print(values)>>> [1, 3, 5, 7, 9]
Et annet eksempel:
values = [2, 10, 7, 14, 50]# To sort the values in descending order:values.sort(reverse = True)print(values)>>> [50, 14, 10, 7, 2]
En liste over strenger kan også sorteres, alfabetisk, eller etter strengens lengde. For eksempel;
# 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']
Vi kan sortere den samme listen alfabetisk ved å bruke 'strenger'.
Løping gjennom lister
Gjennomgang av lister kan gjøres på samme måte som andre loopingsfunksjoner i Python. På denne måten kan en metode utføres på flere elementer i en liste samtidig. For eksempel:
liste = [10, 20, 30, 40, 50, 60, 70].
For å gå gjennom alle elementene i denne listen, og la oss si, legg til 10 til hvert element:
for elem in list:elem = elem + 5print(elem)>>>>15253545556575
Å gå gjennom de tre første elementene i listen, og slette dem alle;
for elem in list[:3]:list.remove(elem)>>>list = [40, 50, 60, 70]
Å gå gjennom det tredje (indeks 2) til det siste elementet på listen, og legge dem til en ny liste som heter 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]
På denne måten kan en hvilken som helst metode eller funksjon brukes på medlemmene i en liste for å utføre en bestemt operasjon. Du kan enten gå gjennom alle medlemmene i listen, eller gå gjennom en delmengde av listen ved å bruke listeskiver.
Listeforståelser
Listeforståelse er Python-funksjoner som brukes til å lage nye sekvenser (for eksempel lister, ordbøker osv.) Ved hjelp av sekvenser som allerede er opprettet. De hjelper med å redusere lengre sløyfer og gjør koden lettere å lese og vedlikeholde.
For eksempel; la oss si at du ønsket å lage en liste som inneholder rutene til alle tallene fra 1 til 9:
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]
Å gjøre det samme med listeforståelser:
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]
Som sett ovenfor er det kortere å skrive koden ved hjelp av listeforståelser enn å bruke tradisjonell for sløyfer, og er også raskere. Dette er bare ett eksempel på bruk av listeforståelse i stedet for for løkker, men dette kan replikeres og brukes mange steder der for løkker også kan brukes. Noen ganger er det bedre å gå med en for loop, spesielt hvis koden er kompleks, men i mange tilfeller vil listeforståelser gjøre kodingen din enklere og raskere.
Nedenfor er en tabell som inneholder noen listefunksjoner og metoder, og beskrivelsene av dem.
Innebygde funksjoner
FUNKSJON | BESKRIVELSE |
Rund() | Avrunder tallet som er sendt som et argument til et spesifisert antall sifre, og returnerer flytepunktverdien |
Min () | returner minimumselementet til en gitt liste |
Maks () | returner maksimumselementet til en gitt liste |
len () | Returnerer lengden på listen |
Oppregne () | Denne innebygde funksjonen genererer både verdiene og indeksene til elementene i en iterabel, slik at vi ikke trenger å telle manuelt |
Filter() | tester om hvert element i en liste er sant eller ikke |
Lambda | Et uttrykk som kan vises på steder der et def (for å lage funksjoner) ikke er syntaktisk, inne i en bokstavelig liste eller en funksjons samtalsargumenter |
Kart() | returnerer en liste over resultatene etter at den gitte funksjonen er brukt på hvert element i en gitt iterabel |
Akkumulere() | bruke en bestemt funksjon som er gitt i argumentet til alle listeelementene, returnerer en liste som inneholder de mellomliggende resultatene |
Sum() | Returnerer summen av alle tallene i listen |
Cmp () | Dette brukes til å sammenligne to lister og returnerer 1 hvis den første listen er større enn den andre listen. |
Sett inn | Sett inn element for å liste på bestemt posisjon |
Liste Metoder
FUNKSJON | BESKRIVELSE |
Legg til () | Legger til et nytt element på slutten av listen |
Klar() | Fjerner alle elementene fra listen |
Kopiere() | Returnerer en kopi av originallisten |
Forlenge() | Legg til mange elementer på slutten av listen |
Telle() | Returnerer antall forekomster av et bestemt element i en liste |
Indeks () | Returnerer indeksen til et bestemt element i en liste |
Pop () | Sletter elementet fra listen ved en bestemt indeks (slett etter posisjon) |
Ta vekk() | Sletter spesifisert element fra listen (slett etter verdi) |
Omvendt() | Omvendt metode på stedet som reverserer rekkefølgen på elementene i listen |
Sammendrag
- En liste er nøyaktig hvordan det høres ut, en container som inneholder forskjellige Python-objekter, som kan være heltall, ord, verdier, etc.
- Python-lister kan være homogene, betyr at de kan inneholde samme type objekter; eller heterogen, som inneholder forskjellige typer objekter.
- For å få tilgang til verdier i lister, kan indeksen til objektene i listene brukes.
- Listesnitting er metoden for å dele et delsett av en liste, og indeksene til listeobjektene brukes også til dette.
- Tre metoder for å slette listeelementer er: 1) list.remove (), 2) list.pop () og 3) del operator
- Vedleggsmetoden brukes til å legge til elementer. Dette legger elementet til slutten av listen.
- Looping-metoden til Python-programmet kan utføres på flere elementer i en dataliste samtidig.
- Listeforståelse er Python-funksjoner som brukes til å lage nye sekvenser (for eksempel lister, ordbøker osv.) Ved hjelp av sekvenser som allerede er opprettet.