Professional Documents
Culture Documents
String
Smjer: Održavanje računalnih sustava
Nastavnik: Vladimir Bralić pred., mag. inf.
imeStringa[indeksZnaka]
String – indeks (2)
>>> string='Dobar dan!' >>> string[3]
>>> string[0] 'a'
'D' >>> string[4]
'r'
>>> string[1]
>>> string[5]
'o' ' '
>>> string[2] >>> string[6]
'b' 'd'
String – indeks (3)
• Indeks može imati negativni predznak. U ovom
slučaju referenciramo znak koji je za broj mjesta u
indeksu udaljen od kraja stringa.
>>> string
'Dobar dan!'
>>> string[-1]
'!'
>>> string[-2]
'n'
>>> string[-3]
'a'
String – indeks (4)
• Indeks može biti i dva cijela broja odvojena
dvotočkom [x:y]. U ovom slučaju indeks označava
raspon koji referenciramo i zovemo ga isječak.
>>> string
'Dobar dan!'
>>> string[0:5]
'Dobar'
>>> string[6:10]
'dan!'
>>> string[6:9]
'dan'
String – indeks (5)
• Raspon u indeksu može biti izražen samo sa jednim
brojem, npr.: [:3] ili [2:]. U prvom slučaju
referenciramo sve znakove od nultog do trećeg a u
drugom sve znakove od drugog do zadnjeg.
>>> string
'Dobar dan!'
>>> string[:5]
'Dobar'
>>> string[6:]
'dan!'
Stringovi i operatori
• Operator konkatencaije ili spajanja: +
• Spaja dva ili više stringova. Oba operatora moraju biti klase str.
>>> a="Ana"
>>> b="Iva"
>>> a+b
'AnaIva'
• Operator repeticije ili ponavljanja: *
• Ponavlja string x puta. Lijevi operator mora biti klase str a desni
int.
>>> a="Ana"
>>> a*4
'AnaAnaAnaAna'
Stringovi i operatori (2)
• Operator uspoređivanja (pripadnosti): in
• in operater uspoređivanja provjerava je li neki znak
dio nekog stringa. Rezultat je bool vrijednost
(true/false).
• Sintaksa je:
znak in string >>> a
'Ana'
>>> "a" in a
True
>>> "n" in a
True
Posebni znakovi u stringovima
• Posebni znakovi u stringu su znakovi koji nose neko
posebno značenje pri ISPISU stringa (funkcija print)
i zapisu u datoteku. Svi posebni znakovi počinju sa
znakom \ (engl. backslash, escape character).
>>> a="var:\ta\tb\nval:\t3\t1"
>>> a
'var:\ta\tb\nval:\t3\t1'
>>> print (a)
var: a b
val: 3 1
Mijenjanje stringova
• U Pythonu stringovi su nepromjenjivi. Pod ovim
podrazumijevamo promjene individualnih znakova.
Cijelu varijablu je, naravno, moguće promijeniti.
• Ovo znači da promjene u stringovima ostvarujemo
stvaranjem novog stringa.
>>> a
'Ana'
>>> len(a)
3
Metode stringa
• Kao i u slučaju metodi liste (npr. append ili sort)
metode se pozivaju tako da ih navedemo iza imena
stringa.
ImeStringa.ImeMetode(parametriMetode)
string.startswith(str,[pocetak],[kraj])
string.startswith(str,[pocetak],[kraj])
>>> a
'Dobar dan!'
>>> a.upper()
'DOBAR DAN!'
Metoda lower
• Mijenja sva slova u stringu iz velikih u mala.
Sintaksa je:
string.lower()
>>> a
'Dobar dan!'
>>> a.lower()
'dobar dan!'
Metoda split
• Dijeli string u više manjih stringova, granica dijeljenja je
string ili znak predan u parametrima. Sintaksa je:
string.split(granicniZnak,[maxBrojPodjela])
>>> a
'Dobar dan!'
>>> a.replace("a","e")
'Dober den!'
>>> a.replace("a","e",1)
'Dober dan!'
>>> a.replace("ar","erman")
'Doberman dan!'
Metoda strip
• Metoda briše početne i zadnje znakove u stringu
ako odgovaraju predanom parametru. Sintaksa je:
string.strip([znakoviKojiSeBrisu])
string.count(stringKojiSeTrazi)
>>> a
'Dobar dan'
>>> a.count('a')
2
Metoda find
• Provjerava pojavljuje li se predani parametar u stringu.
Sintaksa je:
string.find(stringKojiSeTrazi,[pocetak],[kraj])
string.index(stringKojiSeTrazi,[pocetak],[kraj])
>>> a
'Dobar dan'
>>> a.index('a')
3
Metoda isalnum
• Provjerava sastoji li se string samo od slova i brojki.
Sintaksa je:
string.isalnum()
• Metoda vraća bool vrijednost.
>>> b
'Sretni5'
>>> b.isalnum()
True
>>> c
'DobarDan!'
>>> c.isalnum()
False
Metoda isalpha
• Provjerava sastoji li se string samo od slova.
Sintaksa je:
string.isalpha()
• Metoda vraća bool vrijednost.
>>> a
'Dobar dan'
>>> a.isalpha()
False
>>> a="DobarDan"
>>> a.isalpha()
True
Metoda isdigit
• Provjerava sastoji li se string samo od brojki.
Sintaksa je:
string.isdigit()
• Metoda vraća bool vrijednost.
>>> a
'Dobar3'
>>> a.isdigit()
False
>>> a="23"
>>> a.isdigit()
True
Metoda isupper
• Provjerava sastoji li se string samo od velikih slova.
Sintaksa je:
string.isupper()
• Metoda vraća bool vrijednost.
>>> a='DOBARDAN'
>>> a.isupper()
True
Metoda islower
• Provjerava sastoji li se string samo od malih slova.
Sintaksa je:
string.islower()
• Metoda vraća bool vrijednost.
>>> a
'DOBARDAN'
>>> a.islower()
False
Metoda isspace
• Provjerava sastoji li se string samo od razmaka.
Sintaksa je:
string.isspace()
• Metoda vraća bool vrijednost.
>>> a
' '
>>> a.isspace()
True
Metoda join
• Spaja niz stringova u jednistveni string. String nad
kojim je pozvana metoda postaje separator za
perdane stringove. Sintaksa je:
string.join(niz)
• Metoda vraća string vrijednost.
>>> " ".join(["1","2","3",str(4),str(5)])
'1 2 3 4 5'
Metoda join (2)
• Ako je join metodi predan samo jedan string ona će
ga tretirati kao niz, tj. sve znakove u predanom
stringu će odvojiti sa stringom nad kojim je
pozvana.
Pitanja?