Listor i Python
I den här artikeln förklarar vi listor i Python.
Du kan lära dig olika operationer på listor och list-genereringar med kodexempel.
YouTube Video
Listor i Python
I Python implementeras datastrukturen som ofta kallas en array vanligtvis som en 'lista'. Python-listor är mycket flexibla och tillåter följande operationer:.
Skapa en lista
1# Create an empty list
2my_list = []
3print(my_list)
4
5# Create a list with elements
6my_list = [1, 2, 3, 4, 5]
7print(my_list)
- Du kan skapa en lista som tom eller med angivna initiala element.
Komma åt och ändra listelement
1my_list = [1, 2, 3, 4, 5]
2print(my_list) # [1, 2, 3, 4, 5]
3
4element = my_list[0] # Get the element at index 0
5print(element) # 1
6
7my_list[1] = 10 # Change the element at index 1 to 10
8print(my_list) # [1, 10, 3, 4, 5]
- Listelement kan nås eller ändras genom att ange deras index.
Hämta längden på en lista
1my_list = [1, 2, 3, 4, 5]
2
3length = len(my_list)
4print(my_list)
5print(length)
- Med funktionen
len()
kan du få antalet element.
Att lägga till och infoga element i en lista
1my_list = [1, 2, 3, 4, 5]
2
3my_list.append(6)
4print(my_list)
- Med metoden
append()
kan du lägga till ett element i slutet av en lista.
1my_list = [1, 2, 3, 4, 5]
2
3my_list.insert(2, "A") # Insert "A" at index 2
4print(my_list)
- Med metoden
insert()
kan du infoga ett element på valfri position.
Ta bort element från en lista
1my_list = [1, 2, 3, 4, 5]
2
3del my_list[2] # Delete the element at index 2
4print(my_list)
5
6removed_element = my_list.pop(0) # Delete and return the element at index 0
7print(removed_element)
8print(my_list)
- Med
del
-satsen eller metodenpop()
kan du ta bort ett element på en angiven position. Metodenpop()
returnerar det borttagna elementet.
1my_list = [1, 2, 3, 4, 5]
2
3my_list.remove(5) # Remove the first occurrence of 5 from the list
4print(my_list)
- Med metoden
remove()
kan du ta bort den första förekomsten av ett angivet värde.
Lista skivning (slicing)
1my_list = [1, 2, 3, 4, 5]
2
3print(my_list[1:3]) # [2, 3]
4print(my_list[:3]) # [1, 2, 3]
5print(my_list[2:]) # [3, 4, 5]
6print(my_list[:]) # [1, 2, 3, 4, 5]
- Uppdelningssyntaxen
[start:end]
hämtar element frånstart
tillend - 1
. Du kan också utelämna antingenstart
ellerend
.
Sortera en lista
1my_list = [2, 1, 5, 4, 3]
2print(my_list) # [2, 1, 5, 4, 3]
3
4my_list.sort() # Sort in ascending order (modifies the list)
5print(my_list) # [1, 2, 3, 4, 5]
6
7my_list.sort(reverse=True) # Sort in descending order
8print(my_list) # [5, 4, 3, 2, 1]
- Metoden
sort()
kan sortera en lista i stigande eller fallande ordning.
1my_list = [3, 1, 4, 2]
2sorted_list = sorted(my_list)
3print(my_list) # [3, 1, 4, 2]
4print(sorted_list) # [1, 2, 3, 4]
- Funktionen
sorted()
låter dig skapa en ny sorterad lista utan att ändra den ursprungliga listan.
Skapa en omvänd lista
1my_list = [1, 2, 3, 4, 5]
2
3my_list.reverse()
4print(my_list)
- Metoden
reverse()
kan vända ordningen på elementen i en lista.
Listkomprehension
I Python kan du använda den kraftfulla list comprehension-syntaksen för att skapa listor på ett kortfattat sätt. List comprehensions låter dig skriva hela processen för att skapa nya listor med for-loopar på en enda rad. Du kan också använda villkor för att extrahera endast specifika element.
1# Generate squares of numbers from 0 to 9
2squares = [x**2 for x in range(10)]
3print(squares) # [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
4
5# Use a condition to extract squares of even numbers only
6even_squares = [x**2 for x in range(10) if x % 2 == 0]
7print(even_squares) # [0, 4, 16, 36, 64]
8
9# Store either the square or the original number based on a condition
10squares_or_original = [x**2 if x % 2 == 0 else x for x in range(10)]
11print(squares_or_original)
12# Output: [0, 1, 4, 3, 16, 5, 36, 7, 64, 9]
- Med list comprehensions kan du enkelt skapa nya listor med hjälp av loopar och villkor. Genom att använda
if
ochif-else
kan du skapa listkomprehensioner som extraherar element eller genererar olika värden baserat på villkor.
Sammanfogning av listor
1# Concatenate two lists using the + operator
2a = [1, 2, 3]
3b = [4, 5, 6]
4combined = a + b
5print(combined) # [1, 2, 3, 4, 5, 6]
6
7# Extend an existing list with another list
8a = [1, 2, 3]
9b = [4, 5, 6]
10a.extend(b)
11print(a) # [1, 2, 3, 4, 5, 6]
12
13# Concatenate multiple lists using unpacking (*)
14a = [1, 2, 3]
15b = [4, 5, 6]
16c = [7, 8, 9]
17merged = [*a, *b, *c]
18print(merged) # [1, 2, 3, 4, 5, 6, 7, 8, 9]
- I Python kan du sammanfoga listor med hjälp av
+
-operatorn,extend()
-metoden eller uppackningssyntaxen (*
). Det är vanligt att använda+
eller*
när man skapar en ny lista, ochextend()
när man uppdaterar en befintlig lista.
Sammanfattning
Listor är en grundläggande datastruktur i Python och används i många situationer. Det finns många flexibla och användbara funktioner, och att bemästra dem gör programmeringen mer effektiv.
Du kan följa med i artikeln ovan med hjälp av Visual Studio Code på vår YouTube-kanal. Vänligen kolla även in YouTube-kanalen.