Operacije sa sekvencama
Postoji tri osnovna tipa sekvenci u Pajtonu:
- opseg (range)
- n-torka (tuple)
- lista (list)
Sem njih, postoje i tekstualne sekvence (stringovi) i binarne sekvence. Ne mogu se koristiti sve operacije sa svim tipovima sekvenci. Za sada će biti opisane najvažnije operacije koje rade na većini sekvenci.
Kao primer sekvence može poslužiti sledeći opseg:
trostruki = range(3, 100, 3)
# to su brojevi: 3, 6, 9, 12,..., 93, 96, 99
Provera da li se element nalazi u sekvenci
Za proveru da li se neki element nalazi u sekvenci koristi se operator in
print(6 in trostruki) # True
Provela da li se element NE nalazi u sekvenci
Za proveru da li se neki element ne nalazi u sekvenci koristi se operator not in
print(5 not in trostruki) # True
Pristup elementu na određenom mestu u sekvenci
Za pristup elementu na određenom mestu u sekvenci koriste se uglaste zagrade []
unutar kojih se navede indeks željenog elementa.
print(trostruki[1]) # 6
Indeksi predstavljaju redni broj, ali počinju od 0, a ne od 1(!):
- [0] je prvi element
- [1] je drugi element
- [2] je treći element
- [N] je N+1 element
Pristup delu sekvence na određenom mestu u sekvenci
Za pristup delu sekvence od elemenata na mestu M do elementa na mestu N koriste se uglaste zagrade sa dvotačkom po sledećem obrascu: [ M : N ]
print(trostruki[5:10]) # range(18, 33, 3)
Pristup delu sekvence na određenom mestu u sekvenci uz preskakanje
Za pristup delu sekvence od elemenata na mestu M do elementa na mestu N sa korakom K koriste se uglaste zagrade sa dva para dvotački po obrascu: [ M : N : K ]
print(trostruki[5:10:2]) # range(18, 33, 6)
U navedenom primeru korak je 2, što znači da će se pristupiti svakom
drugom elementu opsega trostruki, počevši
od elementa M. Da je korak bio 3, pristupilo bi se svakom trećem
elementu. Svi ostali elementi se preskaču.
Određivanje dužine sekvence
Da bi se utvrdilo koliko elemenata postoji u sekvenci koristi se funkcija
len()
print(len(trostruki)) # 33
Pronalaženje najvećeg elementa u sekvenci
Najveći element sekvence se može pronaći pomoću funkcije
max()
print(max(trostruki)) # 99
Pronalaženje najmanjeg elementa u sekvenci
Najmanji element sekvence se može pronaći pomoću funkcije
min()
print(min(trostruki)) # 3
Broj pojavljivanja elementa u sekvenci
Koliko puta se neki element pojavljuje u sekvenci se može utvrditi
pomoću metode count() navođenjem traženog
elementa u zagradi.
print(trostruki.count(9)) # 1
Rezultat je 1 jer se broj 9 samo jednom pojavljuje u sekvenci "trostruki".
print("Programiranje".count("r")) # 3
Rezultat je 3 jer se slovo "r" tri puta pojavljuje u stringu "Programiranje".
Prvo pojavljivanje elementa u sekvenci
Kada se neki element prvi put pojavljuje u sekvenci se može utvrditi
pomoću metode index() navođenjem traženog
elementa u zagradi po obrascu: sekvenca.index(element)
print("Programiranje".index("r")) # 1
Rezultat je 1 jer se slovo "r" prvi put pojavljuje u stringu "Programiranje" na poziciji sa indeksom 1.
Prvo pojavljivanje elementa u sekvenci počevši od određenog mesta
Prvo pojavljivanje elementa u sekvenci gledano od mesta sa indeksom M (uključujući
i to mesto) se može utvrditi pomoću metode index()
navođenjem traženog elementa i mesta M u zagradi, po obrascu:
sekvenca.index(element, M)
print("Programiranje".index("r", 3)) # 4
Rezultat je 4 jer se slovo "r" posle mesta sa indeksom 3 prvi put pojavljuje upravo na poziciji sa indeksom 4.
Prvo pojavljivanje elementa u određenom delu sekvence
Prvo pojavljivanje elementa u sekvenci gledano od mesta sa indeksom M (uključujući
i mesto M), ali pre mesta sa indeksom N (NE uključujući i mesto N),
može se utvrditi pomoću metode index()
navođenjem traženog elementa i mesta M i N u zagradi, po obrascu:
sekvenca.index(element, M, N)
print("Programiranje".index("r", 5, 9)) # 8
Rezultat je 8 jer se slovo "r" posle mesta sa indeksom 5, a pre mesta sa indeksom 9 prvi put pojavljuje na poziciji sa indeksom 8.