En array (en lista) är en samling av element. Istället för att bara spara ett värde i en variabel, kan vi med listor spara flera värden på samma gång. Elementen kan sedan plockas ut och användas med hjälp av index.
En array (lista) är en sammling av värden i en bestämd ordning. Normalt när vi har tilldelat ett värde till en variabel har vi exempelvis gjort på följande sätt:
a = 3
Men med arrayer kan vi tilldela flera värden i samma variabel!
my_list = [5, 2, 8, 9, 3]
my_list innehåller alltså nu 5 stycken värden.
Du kan skriva ut hela listan på en gång:
print(my_list)
[5, 2, 8, 9, 3]
Eller bara ett värde från listan. Listor är sorterade med index 0, i stigande ordning:
print(my_list[0])
ger utskriften 5
print(my_list[1])
ger utskriften 2 och så vidare.
En array skapar du med följande syntax
listnamn = [värde1, värde2, värde3, osv]
Först ger man listan ett namn, sedan tilldelar man alla värden inom en hakparantes [ ], där varje värde är separerade med ett kommatecken “,”.
Ordningen som värdena tilldelas i spelar roll i listor. Exempelvis har listorna
my_list = [5, 2, 8, 9, 3] my_list2 = [2, 5, 9, 8, 3]
exakt samma värden. Men eftersom värdena inte är i samma ordning, kommer beteendet att vara annorlunda.
print(my_list[0]) print(my_list2[0])
ger utskriften
5
2
Indexen (platsen) på varje element ordnas från 0, 1, 2, 3 … i stigande ordning. Första värdet i listan har alltså index 0. Andra värdet index 1 och så vidare. Det finns även en motsvarande negativ indexering av arrayer. Det innebär att sista värdet även har index -1, näst sista värdet -2 och så vidare. Varje värde har alltså två index var, vilket visas i figuren nedan:
Vi kan alltså ta ut samma värden ur en lista på två sätt, exempelvis:
print(my_list[-1]) print(my_list[4])
ger båda utskriften 3.
Värdena i listor behöver inte vara av samma datatyp. Du kan blanda olika datatyper i samma lista. Exempelvis kan du ha såväl int, strings och listor i samma lista!
my_list3 = [2, "Python", "Python", 23, [3, 5, 10]] print(my_list3)
ger utskriften:
[2, ‘Python’, ‘Python’, 23, [3, 5, 10]]
Arrayer i Python har flera inbyggda egenskaper vilket gör det väldigt smidigt att arbeta med. Nedan beskrivs några av de vanligaste egenskaper hos arrayer. Antag att vi har samma lista i följande exempel
my_list = [5, 2, 8, 9, 3]
Man kan skriva ut flera variabler inom ett interval:
print(my_list[2:4])
ger utskriften
[8, 9]
observera att index 4, inte skrivs ut.
Storleken på en lista anropas med len()
len(my_list)
Returnerar 5, eftersom listan innehåller 5 element.
Du kan ändra värdet på ett element
my_list[1] = 10 print(my_list)
kommer ändra det andra värdet i listan från 2 till 10.
[5, 10, 8, 9, 3]
Lägg till nya värden i listan
Man kan lägga till nya värden i listan med append()
my_list.append(13) print(my_list)
[5, 2, 8, 9, 3, 13]