пʼятницю, 29 червня 2018 р.

Методи(функції) над рядками мовою програмування Python 2.7

Методи(функції) над рядками мовою програмування Python 2.7


Практична робота 3. 
Функції(методи) над рядками мовою програмування Python

На об’єкт рядки(str) мовою програмування Python можна задавати функції(методи). Продемонструємо їх у наступних завданнях.

Завдання 1. Створити та реалізувати алгоритм  в програмному середовищі IDLE, що використовує функцію вирівнювання рядка( розміщення рядка по центру m1.center(d)   , по лівому краю n1.ljust(d)   , по правому краю k1.rjust(d)    )
Зразок алгоритму, що використовує  метод вирівнювання  елементів  рядка мовою Python:

m1='+center+'
print m1.center(26)   # розміщення рядка на 26 символів з вирівнюванням по центру
n1='-left-'
print n1.ljust(27)   # розміщення рядка на 27 символів  з вирівнюванням по лівому краю
k1='&-right-&'
print k1.rjust(25)   # розміщення рядка на 25  символів з вирівнюванням по правому краю

Протестувати  цей алгоритм в програмному середовищі IDLE для: 1) m1='+я вивчу мову Python+'     n1='-Я знаю мову Pascal-'     k1='&-algorytms-&'

Завдання 2. Створити та реалізувати алгоритм, що використовує функцію кількості символів, що входять в  рядок count(s[,i,j])
Зразок алгоритму, що використовує  метод  кількості входжень елементів в  рядок  мовою Python:

m1='+center+'
print m1.count('+'),'= 2 –  кількість входжень символу «+» в рядок  m1=+center+'
n1='---left---'
print n1.count('-',0,5),'=3 - кількість входжень символу(на перших 6 місцях)  «-» в рядку n1=---left---'
k1='&-fight-&-fight-fight -fight'
print k1.count('-fight',0,8),'=1 - кількість входжень послідовності символів(на перших 9-и) «-fight» в рядку k1=&-fight-&-fight-fight -fight'

Протестувати цей алгоритм  в програмному середовищі IDLE для:  m1='+я+вчу+мову+Python+'     n1='-Я-знаю- Pascal-'     k1='&-algorytms-&'

Завдання 3. Створити та реалізувати алгоритм, що використовує функцію визначення  номера позиції першого символу зліва в підрядку, що входить в  рядок find(s[,i,j])
Зразок алгоритму, що використовує  метод  визначення  номера позиції першого символу зліва в підрядку    рядка  мовою Python:

m1='+abrakadabra+'
print m1.find('abra'),'= 1 –  номер позиції першого символу «а» в рядку:', 'рядок=',  m1, 'довжина рядка=', len(m1)
print m1.count('abra'), '= 2 –  кількість входжень символу «abra» в рядок  m1=+abrakadabra+'
n1='---ababagalamaga---'
print n1.find('aga',5,18),'=7 – номер  позиції першого символy(на 5-18-и місцях)  «a» в рядку:', n1, len(n1)
print n1.count('aga'), '= 2 –  кількість входжень символу aga в рядок  n1=---ababagalamaga---'
k1='...І що сало? Ласощі...А чи в окуня шабаш Януковича...Вор Азаров...І мчу кіло бараболі Кучмі...'
print k1.find('...',15,35),'=20- номер позиції першого символy (на 15-35-и) «...» в рядку:', k1, len(k1)
print k1.count('...'), '= 5–  кількість входжень символу ... в рядок  k1'

Протестувати цей алгоритм  в програмному середовищі IDLE для 1) m1='—mabramabrakana--'   n1='!!!аgalamalavaga!!!'   k1='Козак…з…казок…'

Завдання 4. Створити та реалізувати алгоритм, що використовує функцію визначення  номера позиції останнього  символу, якщо рахувати зліва на право в підрядку, що входить в  рядок rfind(s[,i,j])
Зразок алгоритму, що використовує  метод  визначення  номера позиції останнього  символу, якщо рахувати зліва на право в підрядку  рядка  мовою Python:

m1='abrakadabra'
print m1.find('br'),'= 1 – номер  першого символу «b» із першого підрядку "br":', m1, m1[m1.find('br')], len(m1)
print m1.rfind('br'),'= 8 – номер  першого символу «b» в останьому підрядку "br":',  m1, m1[m1.rfind('br')],len(m1)
n1='ababagalamaga'
print n1.find('ag'),'=4 – номер  першого символy «a» в першому підрядку "ag":', n1, n1[n1.find('ag')], len(n1)
print n1.rfind('ag'),'=10 – номер  першого символy «a» в останньому підрядку "ag":', n1,n1[n1.rfind('ag')],len(n1)
k1='gororogo'
print k1.find('oro'),'=1 - номер  першого символy  «o» в  першому підрядку "oro":', k1, k1[k1.find('oro')],len(k1)
print k1.rfind('oro'),'=3 - номер  першого символy  «o» в останньому підрядку "oro": ', k1, k1[k1.rfind('oro')],len(k1)

Протестувати цей алгоритм  в програмному середовищі IDLE для 1) m1='—mabramabrakana--'   n1='!!!аgalamalavaga!!!'   k1='Козак…з…казок…'

Завдання 5. Створити та реалізувати алгоритм, що використовує функцію копіювання рядка з видалення пропусків(пробілів, або пустого  символу) напочaтку і в кінці рядка, strip(),  lstrip(), rstrip().
Зразок алгоритму, що використовує  метод  копіювання рядка з видалення пропусків(пробілів, або пустого  символу) зліва та справа від  рядка  мовою Python:

m1='      abrakadabra        '
print m1, len(m1),  m1.strip(),' – це копія рядка без пропусків',  len(m1.strip()),' – це довжина рядка без пропусків'
print m1.lstrip(),' – це копія без лівих пропусків',  len(m1.lstrip()),' – це довжина без лівих пропусків'
print m1.rstrip(),' – це копія без правих пропусків',  len(m1.rstrip()),' – це довж. без правих пропусків'
n1='                            ab ab aga lam aga    '
print n1, len(n1),  n1.strip(),' – це копія рядка без пропусків',  len(n1.strip()),' – це довжина рядка без пропусків'
print n1.lstrip(),' – це копія без лівих пропусків',  len(n1.lstrip()),' – це довжина без лівих пропусків'
print n1.rstrip(),' – це копія без правих пропусків',  len(n1.rstrip()),' – це довж. без правих пропусків'
k1='  go ro ro go                    '
print k1, len(k1),  k1.strip(),' – це копія рядка без пропусків',  len(k1.strip()),' – це довжина рядка без пропусків'
print k1.lstrip(),' – це копія без лівих пропусків',  len(k1.lstrip()),' – це довжина без лівих пропусків'
print k1.rstrip(),' – це копія без правих пропусків',  len(k1.rstrip()),' – це довж. без правих пропусків'

Протестувати алгоритм  в програмному середовищі IDLE на правильність.

Завдання 6. Створити та реалізувати алгоритм, що використовує функцію створення нового рядка S1 з заміною окремих  фрагментів s2 у рядку  replace(s2,s3, n) новим фрагментом s3   кількістю в n разів.
Зразок алгоритму, що використовує  метод  replace(s2,s3, n)  мовою Python:

m1='abrakadabra'
print m1, len(m1),  m1.replace('a', 'ua', 5), ' – це новий рядок',  len(m1.replace('a', 'ua', 5)), ' – це довжина після змін'
print m1, len(m1),  m1.replace('br', 'gv', 1), ' – це новий рядок',  len(m1.replace('ag', 'ev', 5)), ' – це довжина змін'
print m1, len(m1),  m1.replace('abra', 'ga va  ', 2), ' – це новий рядок',  len(m1.replace('ag', 'ev', 5)), ' – це довжина змін'
n1=' ab ab aga lam aga'
print n1, len(n1),  n1.replace('a', 'ku_ma', 1), ' – це новий рядок',  len(n1.replace('a', 'ua', 5)), ' – це довжина після змін'
print n1, len(n1),  n1.replace('lam', 'var',1), ' – це новий рядок',  len(n1.replace('ag', 'ev', 5)), ' – це довжина змін'
print n1, len(n1),  n1.replace('aga', 'agava  ', 2), ' – це новий рядок',  len(n1.replace('ag', 'ev', 5)), ' – це довжина змін'
k1='noromogoro'
print k1, len(k1),  k1.replace('o', 'o u', 4), ' – це новий рядок',  len(k1.replace('a', 'ua', 5)), ' – це довжина після змін'
print k1, len(k1),  k1.replace('gor', 'gro mo', 2), ' – це новий рядок',  len(k1.replace('ag', 'ev', 5)), ' – це довжина змін'
print k1, len(k1),  k1.replace('oro', 'java  ', 5), ' – це новий рядок',  len(k1.replace('ag', 'ev', 5)), ' – це довжина змін' 

 Протестувати алгоритм на правильність.



Практична робота 2. 
Рядки. Функції прописних символів над рядками.

Завдання 1. Створити та реалізувати алгоритм, що використовує операцію capitalize() створення прописного символу  на початку  рядків.
Зразок алгоритму, що використовує capitalize() для рядків мовою Python:

print '**Функція** capitalize()***UkRAIne-Ukraine****'   # виведеться на екран фраза
S1='UkRAIne'                                       #оголошується рядок  S1 з символами
S2=S1.capitalize()            # застосовується функція до  рядка
print 'S1=', S1, 'S2=', S2     # виведеться на екран змінений рядок

Протестувати алгоритм  в програмному середовищі IDLE для: 1) S1='ОХохОХох';  2) S1='qwerty';  3) S1='ОLKJHGFDSA'

Завдання 2. Створити та реалізувати алгоритм, що використовує операцію swapcase() зміни тільки прописних букв на маленькі  букви  в  рядкy
Зразок алгоритму, що використовує swapcase() для рядків мовою Python:

print '***Функція** swapcase()*** VinniTSA - vINNItsa***'             # виведеться на екран фраза
S3='VinniTSA'                                                                   #оголошується рядок  S3 з символами
S4=S3.swapcase()                                             # застосовується функція до  рядка
print 'S3=', S3, 'S4=', S4           # виведеться на екран змінений рядок

Протестувати алгоритм  в програмному середовищі IDLE для: 1) S3='ОHоhОHоh';  2) S3='qwerty';  3) S3='ОLKJHGFDSA'

Завдання 3. Створити та реалізувати алгоритм  в програмному середовищі IDLE, що використовує операцію upper() зміни усіх  букв на усі  прописні(великі) букви  в  рядкy
Зразок алгоритму, що використовує upper() для рядків мовою Python:

Print '**Функція** upper()**LyceUM - LYCEUM ***'  # виведеться на екран фраза
S5='LyceUM'                                           #оголошується рядок  S5 з символами
S6=S5.upper()                               # застосовується функція до  рядка
print 'S5=', S5, 'S6=', S6                # виведеться на екран змінений рядок

Протестувати алгоритм  в програмному середовищі IDLE для: 1) S5='ОHоhОHоh';  2) S5='qwerty';  3) S5='ОLKJHGFDSA'

Завдання 4. Створити та реалізувати алгоритм, що використовує операцію lower() зміни усіх  букв на усі  маленькі  букви  в  рядкy
Зразок алгоритму, що використовує lower() для рядків мовою Python:

print '**Функція** lower()****INFORMATIKA- informatika ****' # виведеться на екран фраза
S7='INFORMATIKA'                           #оголошується рядок  S7  з символами
S8=S7.lower()                                       # застосовується функція до  рядка
print 'S7=', S7, 'S8=', S8                            # виведеться на екран змінений рядок
Протестувати алгоритм для: 1) S5='ОHоhОHоh';  2) S5='qwerty';  3) S5='ОLKJHGFDSA'
Завдання 5. Створити та реалізувати алгоритм, що використовує  функцію форматованого виводу format()  для виведення  елементів рядка
Зразок алгоритму, що використовує  операцію вибору  елементів із  рядка мовою Python:
n='ціле ЧИСЛО'                          #оголошується рядок  n  з символами
n1=n.lower()                               # застосовується функція до  рядка                      
f='ДІЙСНЕ число'                         #оголошується рядок  f  з символами
f1=f.upper()                               # застосовується функція до  рядка
s='SEARCH STRING'                        #оголошується рядок  s  з символами
s1=s.swapcase()                        # застосовується функція до  рядка                    
print '{} {} {}'.format(n, f, s)          # виведеться на екран незміненні рядки
print '{} {} {}'.format(n1, f1, s1)        # виведеться на екран зміненні рядки

Протестувати алгоритм  в програмному середовищі IDLE для 1) n='ЦІЛЕ ЧИСЛО'   f='дійсне число'  s='SEArch strING'    
                                                                       
Завдання 6. Створити та реалізувати алгоритм, що використовує операцію вибору елементів із  рядка s[i](вибір   і-того символу в рядку(як в додатньому, так і у відємному напрямі)
Зразок алгоритму, що використовує  операцію вибору  елементів із  рядка мовою Python:

m1='analysis+'; m2=m1.capitalize()           
n1='synthesis=';   n2=n1.swapcase()                       
k1='studying'; k2=k1.swapcase()                       
print 'останній символ в m1:{}, останній символ в n1:{}, {},{}'.format(m2[8], n2[-1], k2[0], min(k2))    

Протестувати алгоритм  в програмному середовищі IDLE.



Практична робота 1.
Алгоритми з операціями над рядками мовою Python.

Завдання 1.1. Створити та реалізувати алгоритм, що використовує операцію додавання рядків.
Зразок алгоритму, що використовує додавання рядків мовою Python:

T1='ви'
T2='го'
T3='да'
print  T1+T2+T3                      #отримаємо додавання трьох рядків, тобто cлово «вигода»

Протестуйте цей алгоритм в програмному середовищі IDLE.

Завдання 2.1. Створити та реалізувати алгоритм, що використовує операцію множення рядка на ціле число.
Зразок алгоритму, що використовує множення рядків мовою Python:

m1='analysis+'
n1='synthesis='
k1='studying'
k11='kan'
print m1+n1+k1                                  #отримаємо словесний вираз
print 2*m1+3*n1+4*k1                   #отримаємо заморочений словесний вираз
print k11*2                                       #отримаємо двократне повторення,тобто рядок «канкан»
print 5*k11,'-',3*k11,'=',2*k11      #отримаємо «словесний» вираз із рядка «кан»

Протестуйте цей  алгоритм в програмному середовищі IDLE.

Завдання 3.1. Створити та реалізувати алгоритм, що використовує операцію визначення довжини рядка len(s)(кількість символів в рядку)
Зразок алгоритму, що використовує  знаходження довжини суми рядків мовою Python:

m1='analysis+'
n1='synthesis='
k1='studying'
print    m1+n1+k1, len(m1+n1+k1)      
print    2*m1+3*n1+4*k1, len(2*m1+3*n1+4*k1)               #80 – кількість символів в рядку  2*m1+3*n1+4*k1

Протестуйте алгоритм в програмному середовищі IDLE.

Завдання 4.1. Створити та реалізувати алгоритм, що використовує операцію вибору елементів із  рядка s[i](вибір і-того символу в рядку(як в додатному, так і у від'ємному напрямі)
Зразок алгоритму, що використовує  операцію вибору  елементів із  рядка мовою Python:

m1='analysis+'
n1='synthesis='
k1='studying'
A=m1[0]+n1[2]+k1[-1]+n1[5]+m1[-6]
print A, len(A)       # 5 – це довжина рядка  із символів «а+n+g+e+l=angel»

Протестуйте цей  алгоритм в програмному середовищі IDLE.

Завдання 5.1. Створити та реалізувати алгоритм, що використовує  функцію форматованого виводу format()  для виведення  елементів
Зразок алгоритму, що використовує  операцію вибору  елементів із  рядка мовою Python:

n=' ціле число: 25,'
f=' дійсне число: 9.03'
s=' search string'
print '{} {} {}'.format(n, f, s)        # виведеться на екран фраза: «ціле число: 25  дійсне число: 9.03 search string»

Протестуйте алгоритм в програмному середовищі IDLE.
Завдання 6.1. Створити та реалізувати алгоритм, що використовує операцію вибору елементів із  рядка s[i](вибір   і-того символу в рядку(як в додатньому, так і у відємному напрямі)
Зразок алгоритму, що використовує  операцію вибору  елементів із  рядка мовою Python:

m1='analysis+'
n1='synthesis='
k1='studying'
print 'останній символ в m1:{}, останній символ в n1:{}, {},{}'.format(m1[8], n1[-1], k1[0], min(k1))  

Протестуйте алгоритм в програмному середовищі IDLE.
  
Завдання 7. 1.Створити та реалізувати алгоритм, що використовує операцію вибору min(), max() елементів із  рядка
Зразок алгоритму, що використовує  операцію вибору min(), max()  елементів із  рядка мовою Python:

m1=min('analysis+')
n1=max('synthesis=')
k1=max('studying')
print '{},{},{}'.format(m1,n1,k1)

Протестуйте алгоритм в програмному середовищі IDLE.


Практична робота 2.
 Рядки. Функції над рядками.

Завдання 1. Створити та реалізувати алгоритм, що використовує операцію capitalize() створення прописного символу  на початку  рядків.
Зразок алгоритму, що використовує capitalize() для рядків мовоюPython:

print '**Функція** capitalize()***UkRAIne-Ukraine****'   # виведеться на екран фраза
S1='UkRAIne'                                       #оголошується рядок  S1 з символами
S2=S1.capitalize()            застосовується функція до  рядка
print 'S1=', S1, 'S2=', S2     виведеться на екран змінений рядок

Протестуйте алгоритм в програмному середовищі IDLE.
Протестувати алгоритм для: 1) S1='ОХохОХох';  2S1='qwerty';  3)S1='ОLKJHGFDSA'

Завдання 2. Створити та реалізувати алгоритм, що використовує операцію swapcase() зміни тільки прописних букв на маленькі  букви  в  рядкy
Зразок алгоритму, що використовує swapcase() для рядків мовоюPython:

print '***Функція** swapcase()*** VinniTSA - vINNItsa***'             #виведеться на екран фраза
S3='VinniTSA'                                                                   #оголошується рядок  S3 з символами
S4=S3.swapcase()                                             застосовується функція до  рядка
print 'S3=', S3, 'S4=', S4           виведеться на екран змінений рядок

Протестуйте алгоритм в програмному середовищі IDLE.
Протестувати алгоритм для: 1) S3='ОHоhОHоh';  2S3='qwerty';  3)S3='ОLKJHGFDSA'

Завдання 3. Створити та реалізувати алгоритм, що використовує операцію upper() зміни усіх  букв на усі  прописні(великі) букви  в  рядкy
Зразок алгоритму, що використовує upper() для рядків мовою Python:
Print '**Функція** upper()**LyceUM - LYCEUM ***'  # виведеться на екран фраза
S5='LyceUM'                                           #оголошується рядок  S5 з символами
S6=S5.upper()                               застосовується функція до  рядка
print 'S5=', S5, 'S6=', S6                виведеться на екран змінений рядок

Протестуйте алгоритм в програмному середовищі IDLE.
Протестувати алгоритм для: 1) S5='ОHоhОHоh';  2S5='qwerty';  3)S5='ОLKJHGFDSA'

Завдання 4. Створити та реалізувати алгоритм, що використовує операцію lower() зміни усіх  букв на усі  маленькі  букви  в  рядкy
Зразок алгоритму, що використовує lower() для рядків мовою Python:

Print '**Функція** lower()****INFORMATIKA- informatika ****' # виведеться на екран фраза
S7='INFORMATIKA'                           #оголошується рядок  S7  з символами
S8=S7.lower()                                       застосовується функція до  рядка
print 'S7=', S7, 'S8=', S8                            виведеться на екран змінений рядок 

Протестуйте алгоритм в програмному середовищі IDLE.
Протестувати алгоритм для: 1) S5='ОHоhОHоh';  2S5='qwerty';  3)S5='ОLKJHGFDSA'

Завдання 5. Створити та реалізувати алгоритм, що використовує  функцію форматованого виводу format()  для виведення  елементів рядка
Зразок алгоритму, що використовує  операцію вибору  елементів із  рядка мовою Python:

n='ціле ЧИСЛО'                          #оголошується рядок  n  з символами
n1=n.lower()                               застосовується функція до  рядка                      
f='ДІЙСНЕ число'                         #оголошується рядок  f  з символами
f1=f.upper()                               застосовується функція до  рядка
s='SEARCH STRING'                        #оголошується рядок  s  з символами
s1=s.swapcase()                        застосовується функція до  рядка                     
print '{} {} {}'.format(n, f, s)          # виведеться на екран незміненні рядки
print '{} {} {}'.format(n1, f1, s1)        # виведеться на екран зміненні рядки

Протестуйте алгоритм в програмному середовищі IDLE.
Протестувати алгоритм для 1) n='ЦІЛЕ ЧИСЛО'   f='дійсне число'  s='SEArch strING'  
                                                                         
Завдання 6. Створити та реалізувати алгоритм, що використовує операцію вибору елементів із  рядка s[i](вибір   і-того символу в рядку(як в додатньому, так і у відємному напрямі)
Зразок алгоритму, що використовує  операцію вибору  елементів із  рядка мовою Python:

m1='analysis+'m2=m1.capitalize()           
n1='synthesis=';   n2=n1.swapcase()                        
k1='studying'k2=k1.swapcase()                        
print 'останній символ в m1:{}, останній символ в n1:{}, {},{}'.format(m2[8], n2[-1],k2[0], min(k2))     


Протестуйте цей алгоритм в програмному середовищі IDLE.



Методи(функції) над рядками мовою програмування Python 2.7


Практична робота 3. 
Функції(методи) над рядками мовою програмування Python

На об’єкт рядки(str) мовою програмування Python можна задавати функції(методи). Продемонструємо їх у наступних завданнях.

Завдання 1Створити та реалізувати алгоритм, що використовує функцію вирівнювання рядка( розміщення рядка по центру m1.center(d)   , по лівому краю n1.ljust(d)   , по правому краю k1.rjust(d)    )
Зразок алгоритму, що використовує  метод вирівнювання  елементів  рядка мовою Python:

m1='+center+'
print m1.center(26)   # розміщення рядка на 26 символів з вирівнюванням по центру
n1='-left-'
print n1.ljust(27)   # розміщення рядка на 27 символів  з вирівнюванням по лівому краю
k1='&-right-&'
print k1.rjust(25)   # розміщення рядка на 25  символів з вирівнюванням по правому краю

Протестуйте цей алгоритм в програмному середовищі IDLE.
Протестувати цей алгоритм для 1) m1='+я вивчу мову Python+'     n1='-Я знаю мову Pascal-'     k1='&-algorytms-&'

Завдання 2Створити та реалізувати алгоритм, що використовує функцію кількості символів, що входять в  рядок count(s[,i,j])
Зразок алгоритму, що використовує  метод  кількості входжень елементів в  рядок мовою Python:

m1='+center+'
print m1.count('+'),'= 2 –  кількість входжень символу «+» в рядок  m1=+center+'
n1='---left---'
print n1.count('-',0,5),'=3 - кількість входжень символу(на перших 6 місцях)  «-» в рядку n1=---left---'
k1='&-fight-&-fight-fight -fight'
print k1.count('-fight',0,8),'=1 - кількість входжень послідовності символів(на перших 9-и) «-fight» в рядку k1=&-fight-&-fight-fight -fight'

Протестуйте алгоритм в програмному середовищі IDLE.
Протестувати цей алгоритм для:  m1='+я+вчу+мову+Python+'     n1='-Я-знаю- Pascal-'     k1='&-algorytms-&'

Завдання 3Створити та реалізувати алгоритм, що використовує функцію визначення  номера позиції першого символу зліва в підрядку, що входить в  рядок find(s[,i,j])
Зразок алгоритму, що використовує  метод  визначення  номера позиції першого символу зліва в підрядку    рядка  мовою Python:

m1='+abrakadabra+'
print m1.find('abra'),'= 1 –  номер позиції першого символу «а» в рядку:', 'рядок=',  m1, 'довжина рядка=', len(m1)
print m1.count('abra'), '= 2 –  кількість входжень символу «abra» в рядок  m1=+abrakadabra+'
n1='---ababagalamaga---'
print n1.find('aga',5,18),'=7 – номер  позиції першого символy(на 5-18-и місцях)  «a» в рядку:', n1, len(n1)
print n1.count('aga'), '= 2 –  кількість входжень символу aga в рядок  n1=---ababagalamaga---'
k1='...І що сало? Ласощі...А чи в окуня шабаш Януковича...Вор Азаров...І мчу кіло бараболі Кучмі...'
print k1.find('...',15,35),'=20- номер позиції першого символy (на 15-35-и) «...» в рядку:', k1, len(k1)
print k1.count('...'), '= 5–  кількість входжень символу ... в рядок  k1'

Протестуйте алгоритм в програмному середовищі IDLE.
Протестувати цей алгоритм для 1) m1='—mabramabrakana--'   n1='!!!аgalamalavaga!!!'   k1='Козак…з…казок…'

Завдання 4Створити та реалізувати алгоритм, що використовує функцію визначення  номера позиції останнього  символу, якщо рахувати зліва на право в підрядку, що входить в  рядок rfind(s[,i,j])
Зразок алгоритму, що використовує  метод  визначення  номера позиції останнього  символу, якщо рахувати зліва на право в підрядку  рядка  мовою Python:

m1='abrakadabra'
print m1.find('br'),'= 1 – номер  першого символу «b» із першого підрядку "br":', m1, m1[m1.find('br')], len(m1)
print m1.rfind('br'),'= 8 – номер  першого символу «b» в останьому підрядку "br":',  m1, m1[m1.rfind('br')],len(m1)
n1='ababagalamaga'
print n1.find('ag'),'=4 – номер  першого символy «a» в першому підрядку "ag":', n1, n1[n1.find('ag')], len(n1)
print n1.rfind('ag'),'=10 – номер  першого символy «a» в останньому підрядку "ag":', n1,n1[n1.rfind('ag')],len(n1)
k1='gororogo'
print k1.find('oro'),'=1 - номер  першого символy  «o» в  першому підрядку "oro":', k1, k1[k1.find('oro')],len(k1)
print k1.rfind('oro'),'=3 - номер  першого символy  «o» в останньому підрядку "oro": ', k1, k1[k1.rfind('oro')],len(k1)

Протестуйте алгоритм в програмному середовищі IDLE.
Протестувати цей алгоритм для 1) m1='—mabramabrakana--'   n1='!!!аgalamalavaga!!!'   k1='Козак…з…казок…'

Завдання 5Створити та реалізувати алгоритм, що використовує функцію копіювання рядка з видалення пропусків(пробілів, або пустого  символу) напочaтку і в кінці рядка, strip(),  lstrip(), rstrip().
Зразок алгоритму, що використовує  метод  копіювання рядка з видалення пропусків(пробілів, або пустого  символу) зліва та справа від  рядка  мовою Python:

m1='      abrakadabra        '
print m1, len(m1),  m1.strip(),' – це копія рядка без пропусків',  len(m1.strip()),' – це довжина рядка без пропусків'
print m1.lstrip(),' – це копія без лівих пропусків',  len(m1.lstrip()),' – це довжина без лівих пропусків'
print m1.rstrip(),' – це копія без правих пропусків',  len(m1.rstrip()),' – це довж. без правих пропусків'
n1='                            ab ab aga lam aga    '
print n1, len(n1),  n1.strip(),' – це копія рядка без пропусків',  len(n1.strip()),' – це довжина рядка без пропусків'
print n1.lstrip(),' – це копія без лівих пропусків',  len(n1.lstrip()),' – це довжина без лівих пропусків'
print n1.rstrip(),' – це копія без правих пропусків',  len(n1.rstrip()),' – це довж. без правих пропусків'
k1='  go ro ro go                    '
print k1, len(k1),  k1.strip(),' – це копія рядка без пропусків',  len(k1.strip()),' – це довжина рядка без пропусків'
print k1.lstrip(),' – це копія без лівих пропусків',  len(k1.lstrip()),' – це довжина без лівих пропусків'
print k1.rstrip(),' – це копія без правих пропусків',  len(k1.rstrip()),' – це довж. без правих пропусків'

Протестуйте алгоритм в програмному середовищі IDLE.
Протестувати алгоритм на правильність з іншими даними.

Завдання 6Створити та реалізувати алгоритм, що використовує функцію створення нового рядка S1 з заміною окремих  фрагментів s2 у рядку  replace(s2,s3, n) новим фрагментом s3   кількістю в n разів.
Зразок алгоритму, що використовує  метод  replace(s2,s3, n)  мовою Python:

m1='abrakadabra'
print m1, len(m1),  m1.replace('a', 'ua', 5), ' – це новий рядок',  len(m1.replace('a', 'ua', 5)), ' – це довжина після змін'
print m1, len(m1),  m1.replace('br', 'gv', 1), ' – це новий рядок',  len(m1.replace('ag', 'ev', 5)), ' – це довжина змін'
print m1, len(m1),  m1.replace('abra', 'ga va  ', 2), ' – це новий рядок',  len(m1.replace('ag', 'ev', 5)), ' – це довжина змін'
n1=' ab ab aga lam aga'
print n1, len(n1),  n1.replace('a', 'ku_ma', 1), ' – це новий рядок',  len(n1.replace('a', 'ua', 5)), ' – це довжина після змін'
print n1, len(n1),  n1.replace('lam', 'var',1), ' – це новий рядок',  len(n1.replace('ag', 'ev', 5)), ' – це довжина змін'
print n1, len(n1),  n1.replace('aga', 'agava  ', 2), ' – це новий рядок',  len(n1.replace('ag', 'ev', 5)), ' – це довжина змін'
k1='noromogoro'
print k1, len(k1),  k1.replace('o', 'o u', 4), ' – це новий рядок',  len(k1.replace('a', 'ua', 5)), ' – це довжина після змін'
print k1, len(k1),  k1.replace('gor', 'gro mo', 2), ' – це новий рядок',  len(k1.replace('ag', 'ev', 5)), ' – це довжина змін'
print k1, len(k1),  k1.replace('oro', 'java  ', 5), ' – це новий рядок',  len(k1.replace('ag', 'ev', 5)), ' – це довжина змін' 

Протестуйте алгоритм в програмному середовищі IDLE. 
Протестувати алгоритм на правильність з іншими даними.

Практична робота №5. 
Вбудовані функції в мові програмування Python

Завдання 1. Створити та реалізувати алгоритм, що використовує вбудовані функції перетворення структурних даних.
Зразок алгоритму, що використовує функціїstr(),int(),float(),ord(),chr(),divmod() мовою програмування Python:

print 'str(777)=',  str(777)                             # перетворює число 777 в рядок символів ‘777’
print 'int(‘777’)=',     int('777')                   # перетворює рядок cимволів ‘777’ в ціле число 777
print 'int(‘77’)**2=',     int('77')**2              # перетворює рядок cимволів ‘77’  і обчислює: 77**2   
print 'float(‘7.077’)=',  float('7.077')             # перетворює ‘7.077’ в дійсне число  7,077
print 'float("7.0")-float("7.7")=',  float('7.0')-float('7.7')
print 'ord(‘f’)=', ord('f'),  'ord("g")= ', ord('g')         # перетворює cимвол ‘f’ в код символа
print 'ord(‘f’)+ ord("g") ' , ord('f')+ ord('g')           # перетворює cимволи ‘f’ та ‘g’ в cуму
print ' chr(125)=', chr(125)          # перетворює число=код символа в його cимвол ‘ ’
print '2*chr(124)+4*chr(125)=', 2*chr(124)+4*chr(125)
print 'divmod(17,4)=', divmod(17,4)    # обчислює  цілу частину від 17/4 та остачу

Протестуйте алгоритм в програмному середовищі IDLE.

Завдання 2. Створити та реалізувати алгоритм, що використовує вбудовані функції перетворення структурних даних.
Зразок алгоритму, що використовує функції abs(), bool(),dir(),eval(),exec(), len() мовою програмування Python:

import random
print '****Модуль числа abs() - це вбудована функція**число без знаку**'
print 'abs(-10)=',  abs(-10)           # обчислює  модуль числа /-10/
print 'Використання функції  abs() для перевірки чи присвоєне значення нуль***'
s1_s2=random.randint(0,3)       # обчислює  випадкове ціле число від 0 до 3
if abs(s1_s2)>0:
  print 's1-s2=', s1_s2,'автомобіль рухається, бо abs(s1_s2)>0 '
else:
    print 's1-s2=',s1_s2, 'автомобіль зупинився, бо abs(s1_s2)>0'

Протестуйте алгоритм в програмному середовищі IDLE.

Завдання 3. Створити та реалізувати алгоритм, що використовує вбудовану функції bool() для аналізу структурних даних.
Зразок алгоритму, що використовує функції bool() програмуванняPython:

print '****Логічна функція bool() - це вбудована функція**True*False**'
print '****Тестування функції bool() для чисел***True*False***'
print 'bool(0)=', bool(0)  'bool(1)=', bool(1),  'bool(-11.23)=', bool(-11.23)
print '**тестування функції bool() для порожніх стрічок та заповнених рядків)***True*False**'
print 'bool(“None”)=', bool('None'),  'bool(“a b c”)=', bool('a b c'),  'bool(' ')=', bool(' ')
print 'Тестування функції bool() для списків, кортежів, словників***True*False***'
v1=[];   v2=['vunder', 'kind'];   v3=['','']   
print 'bool(v1)=', bool(v1),v1,  'bool(v2)=',bool(v2),v2, 'bool(v3)=',bool(v3),v3
print 'Використання  функції bool() для перевірки чи користувач заповнив рядок чи ні***'
pik=input('Введіть рік народження:')
if  not bool(pik):
 print 'Вау,  невже ти забув рік свого народження!'
else:
 print 'Окей, ти добре знаєш рік свого народження!'

Протестуйте алгоритм в програмному середовищі IDLE.


Завдання 4. Створити та реалізувати алгоритм, що використовує вбудовані функції перетворення структурних даних.
Зразок алгоритму, що використовує функції dir (),eval(),exec(), len() мовою програмування Python:

print '****Довідкова функція dir() - це вбудована функція**видає перелік дій над даними**'
print 'dir(777)=',  dir(777)                # надає перелік дій над числом 777  і ти знаєш, що робити з 777
print 'dir ([‘777’])=',  dir(['777'])      # надає перелік дій над списком  [‘777’]  і ти знаєш, що робити
print 'dir(‘77’)**2=',   dir('77')             надає перелік дій над рядком  cимволів ‘77’ 
print '****Довідкова функція help() - це вбудована функція**видає зміст  дій над даними**'
a='допомога програмісту  надається виключно англійською мовою'
print 'help(a.upper)=',  help(a.upper)             #пояснює зміст та результат дії  функції a.upper 
print 'a.upper=',  a.upper             # виводиться на екран  результат дії  функціїa.upper 
lst1=[20,5,15,4,-7,-19, 0, 17]      # оголошується в список lst1 з цілими числами
lst2=['a1','a2','a3','a4']                  # оголошується в список lst2 з рядками символів
print 'help(lst1.sort())=',  help(lst1.sort())             #виводиться на екран  пояснення для функції lst1.sort
print 'help(lst2.reverse())=',  help(lst2.reverse())             #виводиться на екран cписок
print  lst1.sort();                 # виводиться на екран cортування за зростанням елементів  списку  lst1
print  lst2.reverse()                # виводиться на екран зворотний запис  елементів  списку  lst2


Протестуйте алгоритм в програмному середовищі IDLE.



Завдання для самостійної роботи.
1. Створити довільний текст, що містить більше 150 символів.
 2.Створити алгоритми:
a)для підрахунку усіх символів у вашому тексті
b)для заміни крапок у вашому тексті на знаки оклику.
c) для пошуку  слів у вашому тексті, що починаються з "йо".





Довідкова інформація для бажаючих якісно пізнавати
 дисципліну "Програмування мовою Python@



****Довідкова функція dir() - це вбудована функція**видає перелік дій над даними**

Повний перелік вбудованих функції(вони не вимагають імпортування модуля) над  цілими числами int 
в мові програмування Python

dir(777)= ['__abs__', '__add__', '__and__', '__class__', '__cmp__', '__coerce__', '__delattr__', '__div__', '__divmod__', '__doc__', '__float__', '__floordiv__', '__format__', '__getattribute__', '__getnewargs__', '__hash__', '__hex__', '__index__', '__init__', '__int__', '__invert__', '__long__', '__lshift__', '__mod__', '__mul__', '__neg__', '__new__', '__nonzero__', '__oct__', '__or__', '__pos__', '__pow__', '__radd__', '__rand__', '__rdiv__', '__rdivmod__', '__reduce__', '__reduce_ex__', '__repr__', '__rfloordiv__', '__rlshift__', '__rmod__', '__rmul__', '__ror__', '__rpow__', '__rrshift__', '__rshift__', '__rsub__', '__rtruediv__', '__rxor__', '__setattr__', '__sizeof__', '__str__', '__sub__', '__subclasshook__', '__truediv__', '__trunc__', '__xor__', 'bit_length', 'conjugate', 'denominator', 'imag', 'numerator', 'real']

Повний перелік вбудованих функції над списками list 
в мові програмування Python

dir ([‘777’])= ['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__delslice__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getslice__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__setslice__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']

Повний перелік вбудованих функції над стрічками(рядками) str  
в мові програмування Python

dir(‘77’)= ['__add__', '__class__', '__contains__', '__delattr__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__getslice__', '__gt__', '__hash__', '__init__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '_formatter_field_name_split', '_formatter_parser', 'capitalize', 'center', 'count', 'decode', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'index', 'isalnum', 'isalpha', 'isdigit', 'islower', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill']


Відео лекції по програмування на основі мові Python




#ПрактикалекціяДомашня робота
1Практика: Черепахавідео
2Практика: Роботвідео
3Контест: виділення цифр, if, for, whileвідео
4Практика: графічні примітививідео
5Практика: фізичне моделюваннявідео
6Контест: використання масивіввідео
7Контрольна робота №1відео
8Рекурсія: фракталивідео
9Контест: сортуваннявідео
10Асимптотична складність алгоритміввідео
11Практика: Динамічне програмуваннявідео
12Контест: динамічне прораммірованіевідео
13Практика: Z-функція і КМПвідео
14Практика: Арифметичні вирази і калькуляторивідео
15КВИТКИ До осені заліку
16Контест: згадуємо - повтораям
17Словники і безлічі в Python і асимптотика стандартних операційвідео
18Практика: AI Contestвідео
19Практика: Pygame і кулькивідео
20Практика: Pygame, кульки і ООПвідео
21Проміжна здача проектіввідео
22Словники і безлічі в Pythonвідео
23Контрольна робота №1відео
24Практика: web програмуваннявідео
25Контест: Графи, пошук в глибинувідео
26Контест: Пошук в ширинувідео
27Практика: пошук шляхів мінімальної вагивідео
28Практика: двійкові дерева пошукувідео
29Семестрова контрольна роботавідео
30Питань до залікувідео