När du vill konvertera listor (matriser) och tupler till varandra i Python använder du list() och tuple().
Om iterbara objekt som set-typer samt listor och tupler anges som argument returneras nya objekt av typerna list och tupel.
- class list([iterable]) — Built-in Functions — Python 3.10.2 Documentation
- class tuple([iterable]) — Built-in Functions — Python 3.10.2 Documentation
Följande variabler av typen lista, tupel och intervall är exempel.
l = [0, 1, 2]
print(l)
print(type(l))
# [0, 1, 2]
# <class 'list'>
t = ('one', 'two', 'three')
print(t)
print(type(t))
# ('one', 'two', 'three')
# <class 'tuple'>
r = range(10)
print(r)
print(type(r))
# range(0, 10)
# <class 'range'>
Range() returnerar ett objekt av typen range sedan Python 3.
Observera att även om termen ”konvertering” används för enkelhetens skull, skapas det nya objektet faktiskt och det ursprungliga objektet förblir intakt.
Skapa en lista: list()
När ett iterbart objekt, t.ex. en tupel, anges som argument för list() genereras en lista med det elementet.
tl = list(t)
print(tl)
print(type(tl))
# ['one', 'two', 'three']
# <class 'list'>
rl = list(r)
print(rl)
print(type(rl))
# [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
# <class 'list'>
Generera tupler: tuple()
När ett iterbart objekt, t.ex. en lista, anges som argument till tuple() genereras en tupel med det elementet.
lt = tuple(l)
print(lt)
print(type(lt))
# (0, 1, 2)
# <class 'tuple'>
rt = tuple(r)
print(rt)
print(type(rt))
# (0, 1, 2, 3, 4, 5, 6, 7, 8, 9)
# <class 'tuple'>
Lägg till eller ändra element i tupler
Tupler är oföränderliga (kan inte uppdateras), så element kan inte ändras eller tas bort. En tupel med element som ändrats eller raderats kan dock erhållas genom att använda list() för att skapa en lista, ändra eller radera element och sedan använda tuple() igen.