10: Стрингови (string)


Стринг представља низ карактера (нпр. стринг "Zdravo, svete!" има 14 карактера, има разна слова, као и празнине и знакове интерпункције попут " ", "!")

 

Манипулисање стринговима као низовима карактера: S[ ]


Да бисмо могли да манипулишемо стринговима, морамо да имамо приступ појединачним карактерима од којих се тај стринг састоји. У Python-у је то омогућено на следећи начин: за стринг S и цели број index, следећа нотација (ознака):

S[index]

враћа карактер из S који се налази на позицији index. У Python-у индекси стрингова почињу нумерацију бројем 0, па је S[0] карактер, S[1] је други карактер, итд.

У стрингу "Zdravo, svete!" листа карактера је следећа:

Index: 0  1  2  3  4  5  6  7  8  9 10 11 12 13

Char.: Z  d  r  a  v  o   ,       s  v  e  t    e   !

Приметићете да је карактер индекса 7 празнина.

 

Одређивање броја карактера у низу: len


Да бисмо добили број карактера у стрингу, користимо функцију len. На пример, len("Zdravo, svete!") je 14.

Вежба вишеструког избора: Последњи карактер
Који израз од понуђених се користи за одређивање последњег карактера у стрингу S?
Тачно!

 

Иако len(S) даје укупан број карактера у стрингу, пошто индексирање почиње од нуле, последњи карактер је индекса len(S)-1.

Пример: дужина стринга и карактери
Štampa

 

Сечење стрингова: S[:]


Исецањем неког дела стринга добијамо подстринг.Нпр. ,стрингови "med" и "dve" су подстрингови од "medved". Да бисмо добили подстринг у Python-у, користимо следећу синтаксу

S[prviIndex:poslednjiIndex]

 

да добијемо подстринг који почиње од позиције prviIndex и завршава се на позицији poslednjiIndex-1. За следећи пример пробајте да погодите шта ће бити излаз пре него што га покренете.

 

Пример: подстрингови

 

Још једном да поновимо да је код узимања подстрингова из стринга први индекс укључен, а последњи индекс није укључен у подстринг. Ово може бити чести извор грешака при програмирању.

 

Вежба кодирања: Сецирање стринга
Написати програм који учитава стринг користећи input() конструкцију, и исписује исти стринг без првог и последњег карактера(подразумева се да је дужина стринга бар 2.). Нпр. за улаз stric, излаз ће бити tri.
Можете унети улаз за програм у поље испод.

 

Сабирање стрингова: +

 

Сви знамо да је 1+2=3. Ипак, са стринговима то није тако. Посматрајмо следећи пример:

 

Пример: сабирање стрингова

 

Као што видимо, када саберемо стрингове S и T, добија се нови стринг који почиње стрингом S, а стринг Т се надовезује одмах на њега. Овакво спајање стрингова се назива конкатенација.

 

Вежба кодирања: Замена првог и последњег карактерa
Написати програм у којем учитавамо стринг помоћу input() конструкције, и исписује исти тај стринг, са малом променом, да буду замењени први и последњи карактер(подразумева се да је величина стринга бар 2). На пример, за улаз mleko излаз ће бити lekom. Cавет
Можете унети улаз за програм у поље испод.

 

Могу се множити стрингови и цели бројеви. S * n је уствари исто што и S + S + ... + S.

 

Пример: дуплирање стринга