Лекция 8 Символдық жолдар және оларға қолданылатын операциялар
Python тілінде мәтіннен іздеу, мәтіннің жеке бөліктерін алмастыру т.б. мәтінді түрлендіру операцияларын орындауға болады. Мәтінмен жұмыс жасау үшін деректердің арнайы str жолдық типі анықталған.
Python мәтінді апострофқа немесе тырнақшаға алса, онда жолдық нысан жасайды.
Мысалы:
>>> ‘Сәлем'
‘Сәлем'
>>> “Сәлем"
‘Сәлем'
Тырнақшасыз мәтін қате болып табылады.
Мысалы:
>>> hello
командасы орындалса, нәтижеде мәтіннің анықталмағандығы туралы келесі хабарлама шығады:
Traceback (most recent call last):
File "
", line 1, in
hello
NameError: name 'hello' is not defined
>>>
Бос жол жасауға да болады:
>>> ''
''
Символдық жолдармен жұмыс жасау функциялары
Python тілінде символдық жолдармен жұмыс жасаудың көптеген қондырылған функциялары бар.
1. len() функциясы жолдың ұзындығын табады.
Жалпы түрі: len(жол)
Мысалы:
>>> len(‘Сәлем!')
6
>>> help(len) командасын орындатып len функциясы туралы анықтама алуға болады. Нәтижеде келесі хабарлама шығады:
Help on built-in function len in module builtins:
len(obj, /)
Return the number of items in a container.
Хабарламаның аудармасы:
Модуль кіріктірілген len функциясы туралы анықтама:
len (obj, /)
Контейнердегі пункттердің санын қайтарыңыз.
2. + (конкатенация) операциясы бірнеше жолды біріктіру үшін қолданылады.
Мысалы:
>>> ‘Сәлем, ' + ‘достар!'
‘Сәлем, достар!'
3. str() функциясы санды жолға түрлендіру үшін қолданылады.
Келесі мысал санды жолға түрлендіріп және екі жолды біріктіреді.
>>> ‘Топ- ' + str(2)
‘Топ-2‘
Мұндағы str(2) командасы 2 санын жолға түрлендіреді.
Кері әрекет жасауға да болады.
>>> int("-5")
-5
Python тілінде берілген жолды берілген сан рет қайталауға болады.
>>> "Python"*5
'PythonPythonPythonPythonPython'
Көбейту операциясы мұнда басқа мағынаға ие.
Жолды айнымалыға меншіктеп, оған әрекеттер орындауға болады.
>>> s = "Бағдарламалау тілі"
>>> s
'Бағдарламалау тілі'
>>> s*4
'Бағдарламалау тіліБағдарламалау тіл'Бағдарламалау тіліБағдарламалау тілі'
>>> s + " Python"
'Бағдарламалау тілі Python'
Python тілінде жолдармен жұмыс жасауда арнайы символдар (басқарушы escape-тізбек) қолданылады:
\n –жаңа жолға өту
\t – табуляция белгісі
\\ - көлденең сызық
\' –апостроф символы
\" –тырнақша символы
Олар бір символ ретінде түсініледі.
Мысалы:
>>> len("\'")
1
Мысалы:
>>> print('Бұл мәтіндік\nжол')
Бұл мәтіндік
жол
Жолдан қию
Жолдың әр символының реттік нөмірі (индексі) болады. Нөмір нөлден басталады.
Мысалы:
s='Питон'
print(s[0],s[1],s[2])
Нәтиже: Пит
Жолдан қиюды жүзеге асыруға болады.
Жалпы түрі: s[k:n]
Нәтижеде s жолының k- нөмірлі символынан бастап n- нөмірлі символына дейінгі символдарды қиып алады. (n соңғы индекс нәтижеге енбейді)
Мысалы: s[0:3] командасы s жолының 1- нөмірлі символынан бастап 3- нөмірлі символына дейін қиып алады.
Нәтижеде “Пит” тіркесі шығады.
Мысалы:
>>> s = 'Бағдарламалау тілі'
>>> s[0]
'Б'
Қию операциясының түрлі манипуляциясы бар:
>>> s[:3] # 0- индекстен 3-ке дейін қию (оны қоса алғанда)
'Пит'
>>> s[:] # барлық жолды қию
>>> s[::2] # үшінші аргумент қадамды береді (қалыпты жағдайда 1)
Мысалы:
s="Питон бағдарламалау"
print(s[::2])
Нәтиже: Птнпормаа
>>> s[::-1] # «кері» қадаммен қияды
Мысалы:
s="Питон бағдарламалау"
print(s[::-1])
Нәтиже: уаламмаргорп нотиП
Келесі командалар жолдағы бірінші символды өзгертеді:
>>> s = '1 бағдарлама'
>>> '5' + s[1:]
'5 бағдарлама'
Берілген сөздің әрбір әрпін циклді қолданып қиып алу мысалдарын қарастырайық.
Мысал23: Келесі бағдарлама сөздің әрбір әрпін қиып алып, бірінің астына бірін шығарады (17-сурет).
s="balapan"
i=0
while iprint (s[i:i+1]) # немесе s[i]
i=i+1
Нәтиже:
b
a
l
a
p
a
n
17- сурет. Бағдарламаның орындалу нәтижесі
Мысал24: Берілген сөздегі а әрпінің санын табыңдар.
s="balapan"
i=0
k=0
while iif s[i:i+1]=='a': k=k+1 # немесе s[i]
i=i+1
print(k)
Мысал25: Берілген сөздегі берілген әріпті санаңдар:
s="balapan"
i=0
k=0
n=input()
while iif s[i]==n: k=k+1
i=i+1
print(k)
Достарыңызбен бөлісу: |