Introduktion till tuple
Vad är en tuple?
En tuple är en ordnad samling av värden, precis som en lista – men med en viktig skillnad:
En tuple är oföränderlig – man kan inte ändra, lägga till eller ta bort element efter att den har skapats.
Tuples används när man vill:
- spara en fast uppsättning värden,
- skydda datan från att ändras av misstag,
- använda tuples som nycklar i dictionaries eller i returnerade värden från funktioner.
Skapa en tuple:
person = ("Alice", 22)Det här skapar en tuple med två värden: ett namn och en ålder.
Du kan också skapa en tom tuple:
empty = ()Eller en tuple med bara ett värde (observera kommatecknet!):
one_item = ("test",)Läsa från en tuple
Precis som med listor kan du läsa med index:
print(person[0]) # Alice
print(person[1]) # 22Tuples kan inte ändras
person[0] = "Bob" # FEL: TypeErrorDu kan inte:
- ändra ett värde
- lägga till ett värde
- ta bort ett värde
När används tuples?
När datan inte ska ändras
T.ex. koordinater:
position = (10, 20)När du vill returnera flera värden från en funktion:
def get_name_and_age():
return ("Alice", 22)
name, age = get_name_and_age()
print(name, age)I loopar med enumerate() eller items() – ofta används tuple-uppackning:
for index, value in enumerate(["a", "b", "c"]):
print(index, value)När man jobbar med databaser:
SQLite-returnerade rader är tuples:
row = ("Alice", "TE22", 17)
name, school_class, age = rowJämförelse: listor vs tuples
| Egenskap | Lista ([]) | Tuple (()) |
|---|---|---|
| Ändringsbar | ✅ Ja | ❌ Nej |
| Indexering | ✅ Ja | ✅ Ja |
| Loopbar | ✅ Ja | ✅ Ja |
| Användning | När innehåll kan ändras | När innehåll ska vara fast |
| Prestanda | Lite långsammare | Lite snabbare |
Omvandla mellan listor och tuples
# Lista till tuple
my_list = [1, 2, 3]
my_tuple = tuple(my_list)
# Tuple till lista
new_list = list(my_tuple)Sammanfattning
- En tuple är som en låst lista.
- Bra när datan är fast, inte ska ändras, eller returneras som paket.
- Används ofta bakom kulisserna i Python, t.ex. i databaser, funktioner och loopar.