Ko želite v Pythonu med seboj pretvoriti sezname (polja) in tuple, uporabite funkciji list() in tuple().
Če so kot argumenti podani iterabilni objekti, kot so tipi množic ter seznami in tupli, se vrnejo novi objekti tipov seznam in tuple.
- class list([iterable]) — Built-in Functions — Python 3.10.2 Documentation
- class tuple([iterable]) — Built-in Functions — Python 3.10.2 Documentation
Naslednji primeri spremenljivk tipa seznam, tuple in range.
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'>
Funkcija range() od Pythona 3 vrača objekt tipa range.
Upoštevajte, da se zaradi priročnosti uporablja izraz “pretvorba”, čeprav se dejansko ustvari nov objekt, prvotni objekt pa ostane nedotaknjen.
Ustvarjanje seznama: list()
Če je kot argument funkcije list() naveden iterabilni objekt, kot je tuple, se ustvari seznam s tem elementom.
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'>
Ustvarjanje nizov: tuple()
Če je kot argument funkcije tuple() naveden iterabilen objekt, na primer seznam, se ustvari tuple s tem elementom.
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'>
Dodajanje ali spreminjanje elementov nizov
Tupli so nespremenljivi (ni jih mogoče posodabljati), zato elementov ni mogoče spremeniti ali izbrisati. Vendar lahko tuple s spremenjenimi ali izbrisanimi elementi dobimo tako, da s funkcijo list() ustvarimo seznam, spremenimo ali izbrišemo elemente in nato ponovno uporabimo funkcijo tuple().