Vse o Programiranju 1 - PRM 2021/22

Zakaj ''vse'' in ne vse?

Zakaj ''vse'' in ne vse?

od Monika Vidović -
Število odgovorov: 1
Predpostavka: Nekatera pravila funkcije rezanje (slicing) lahko uporabimo tako pri seznamih kot nizih, obstajajo pa tudi razlike.

Sprva bomo seznam in niz skrajšali.

Rezanje seznama na primeru:
rezanje seznama

Rezanje niza na primeru: z enakim postopkom želimo skrajšati niz
rezanje niza

Ugotovimo, da funkcija deluje enako v obeh primerih. Python pri seznamu in nizu 'uporabi' 0 kot prvi indeks.
V nadaljevanju bomo poskušali spremeniti vsebino seznama ter niza.

Spreminjanje seznama s pomočjo rezanja:
spreminjanje seznama

Spreminjanje niza s pomočjo rezanja - poskus 1: tako kot v zgornjem primeru želimo z enakim postopkom spremeniti niz
spreminjanje niza

Python 'odgovori', da je prišlo do napake. Ugotovimo, da je niz nespremenljiv.
Če želimo spremembe, moramo ustvariti novega.

Spreminjanje niza s pomočjo rezanja - poskus 2: z uvedbo novega niza
nov niz

Sklep: Spremenljivost je zmožnost spreminjanja določenih vrst podatkov, ne da bi jih v celoti ponovno ustvarili.
Nizi so v Pythonu nespremenljivi, kar pomeni, da obstoječega niza ne moremo spremeniti. Najboljše, kar lahko storimo je, da ustvarimo nov niz, ki je različica izvirnika.
Za razliko od nizov, so seznami spremenljivi - torej posameznim elementom seznama lahko dodelimo vrednost z uporabo indeksa.

Dodaten primer:

Spreminjanje seznama:
spreminjanje seznama 2

Spreminjanje niza - narobe:
spreminjanje niza 2

Spreminjanje niza - pravilno: z uvedbo novega niza
nov niz 2
V odgovor na Monika Vidović

Re: Zakaj ''vse'' in ne vse?

od Matija Lokar -

Lepo. Res je, osnovna značilnost nizov je, da jih ne moremo spreminjati, tabela pa lahko. Zato vsi prijemi, opisani na prosojnicah, ko s pomočjo rezanja spreminjamo tabelo, delujejo, če pa jih poskusimo v isti obliki uporabiti na nizih pa ne.

Moniki v nagrado pa en Jolly.