Når du ønsker at konvertere lister (arrays) og tupler til hinanden i Python, skal du bruge list() og tuple().
Hvis iterable objekter såsom sættyper samt lister og tupler er angivet som argumenter, returneres nye objekter af typerne list og tuple.
- class list([iterable]) — Built-in Functions — Python 3.10.2 Documentation
- class tuple([iterable]) — Built-in Functions — Python 3.10.2 Documentation
De følgende variabler af typen liste, tupel og interval er eksempler.
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() returnerer et objekt af typen range siden Python 3.
Bemærk, at selv om udtrykket “konvertering” bruges for nemheds skyld, oprettes det nye objekt faktisk, og det oprindelige objekt forbliver intakt.
Generere liste: list()
Når et iterbart objekt, f.eks. en tupel, angives som argument til list(), genereres en liste med det pågældende element.
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'>
Generering af tupler: tuple()
Når et iterbart objekt, f.eks. en liste, angives som argument til tuple(), genereres en tuple med det pågældende element.
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'>
Tilføje eller ændre elementer i tupler
Tupler er uforanderlige (kan ikke opdateres), så elementer kan ikke ændres eller slettes. En tuple med elementer, der er ændret eller slettet, kan dog opnås ved at bruge list() til at lave en liste, ændre eller slette elementer og derefter bruge tuple() igen.