Сабақтың тақырыбы: Жолдармен жұмыс
1. Жол ұғымы
2. Жолдармен жұмыс
Unicode кодтамасында жолдар символдар тізімін көрсетеді. Біз жолдың әр символына тік жақшаның ішіндегі индекс бойынша қатынай аламыз:
string = "hello world" c0 = string[0] # h print(c0) c6 = string[6] # w print(c6)
c11 = string[11] # қате IndexError: string index out of range print(c11) |
Индекстеу 0-ден басталады, сондықтан жолдың бірінші символының индексі 0 болады. Ал егер жолда жоқ индекске қатынағымыз келсе, онда IndexError ерекше жағдайын аламыз. Жоғарыдағы мысалда жолдың ұзындығы 11 символ, сондықтан оның символдары 0-ден 10-ға дейінгі индекске ие.
Символдарға жолдың соңынан бастап қатынау үшін теріс индексерді қолдануға болады. Сонда -1 индексі соңғы символды, ал -2 индексі соңғының алдындағы символды көрсетеді және т.с.с.
string = "hello world" c1 = string[-1] # d print(c1) c5 = string[-5] # w print(c5) |
Символдармен жұмыс кезінде жолдың өзгермейтін (immutable) тип екенін есте сақтауымыз керек, егер біз жолдың жеке символын өзгерткіміз келсе, онда қате пайда болады:
string = "hello world" string[1] = "R" |
Біз жолдың мәнін, оған басқа мән беру арқылы, толығымен ғана өзгерте аламыз.
Ішкі жолды алу
Қажет болған жағдайда біз жолдан тек жеке символдарды ғана емес, ішкі жолдарды да ала аламыз. Ол үшін келесі синтаксис қолданылады:
string[:end]: 0-ші индекстен бастап end-индекске дейінгі символдар тізбегі алынады;
string[start:end]: start-индекстен бастап end-индекске дейінгі символдар тізбегі алынады;
string[start:end:step]: start-индекстен бастап end-индекске дейінгі символдар тізбегі step қадаммен алынады.
Ішкі жолдарды алудың барлық нұсқаларын қолданайық:
string = "hello world"
# с 0 до 5 символа sub_string1 = string[:5] print(sub_string1) # hello
# со 2 до 5 символа sub_string2 = string[2:5] print(sub_string2) # llo
# со 2 по 9 символ через один символ sub_string3 = string[2:9:2] |
print(sub_string3) # lowr |
ord және len функциялары
Жол Unicode символдарынан тұрғандықан, ord() функциясының көмегімен символдың Unicode кодталуындағы сандық мәнін алуымызға болады:
print(ord("A")) # 65 |
Жолдың ұзындығын алу үшін len() функциясын қолдануға болады:
string = "hello world" length = len(string) print(length) # 11 |
Жол ішінде іздеу
term in string көмегімен term ішкі жолын string жолынан табуға болады. Егер ішкі жол табылса, өрнек True мәнін, әйтпесе False мәнін қайтарады:
string = "hello world" exist = "hello" in string print(exist) # True
exist = "sword" in string print(exist) # False |
Жол символдарын бірінің астына бірін шығару
For циклінің көмегімен жолдың символдарын бірінің астна бірін шығаруға болады:
string = "hello world" for char in string: print(char) |