Робота №1
Основні графічні примітиви
Завдання 1. Тренувальне
Використовуючи інструменти Прямокутник, Еліпс, Спіраль, Полігон і Міліметрівка, побудувати наступні зображення:
Кореляційний аналіз
Об'єкти типу str мають багато методів. Ми розглянемо декілька з них, насамперед ті, що найчастіше використовуються.
split()¶
Метод split() "розбиває" об'єкт символьного типу по вказаному символу чи цілому рядку і повертає список рядків.
Припустимо якщо ми хочемо розділити рядок на окремі слова, то треба "розбити" цей рядок по символу "пробіл":
>>> s = "Happy New Year" >>> s.split(' ') ['Happy', 'New', 'Year'] >>>
Ми отримали список елементами якого є окремі слова символьного рядка. Давайте переконаймося що ми отримали саме список:
>>> l = s.split(' ') >>> type(l) <class 'list'> >>>
Тепер ми можемо оперувати з окремими словами розбитого символьного рядка:
>>> l[0] 'Happy' >>> l[2] 'Year' >>> l[1:] ['New', 'Year'] >>>
Елементами списку є символьні рядки:
>>> type( l[0] ) <class 'str'> >>> print( l[1] + ' ' + l[2] ) New Year >>> g = l[1] + ' ' + l[2] + ' 2018' >>> g 'New Year 2018' >>> print(g) New Year 2018 >>>
В якості аргументу методу split() можна передати не тільки одни символ, а й цілий рядок:
>>> s = 'to be or not to be' >>> s.split('not') ['to be or ', ' to be'] >>> s.split('be') ['to ', ' or not to ', ''] >>>
Якщо не вказувати жодного аргументу методу split(), то рядок буде робзитий по пробілу:
>>> s = 'to be or not to be' >>> s.split() ['to', 'be', 'or', 'not', 'to', 'be'] >>>
Розглянемо ще декілька прикладів використання split():
>>> date = '2017-12-31' >>> sep_date = date.split('-') >>> sep_date ['2017', '12', '31'] >>> year = sep_date[0] >>> year '2017' >>> month = date.split('-')[1] >>> print('Month =', month) Month = 12 >>> >>> s1 = 'Number of girls:11' >>> s2 = 'Number of boys:10' >>> s1.split(':') ['Number of girls', '11'] >>> s1.split(':')[1] '11' >>> n1 = s1.split(':')[1] >>> n1 '11' >>> n2 = s2.split(':')[1] >>> total = int(n1) + int(n2) >>> total 21 >>> type(total) <class 'int'>
join()¶
Метод join() об'єднує об'єктом рядкового типу послідовність з елементів рядкового типу і повертає символьний рядок. Звучить трохи складно? Розглянемо на прикладі:
>>> l = ['Red', 'Green', 'Blue'] # список з трьох елементів рядкового типу >>> s = '+' >>> result = s.join(l) # об'єднуємо елементи списку "l" за допомогою рядка "s" >>> result 'Red+Green+Blue' >>> type(result) # отримуємо рядок <class 'str'> >>>
Зауважте, що метод join() відноситься до рядка, а не до списку! Запис виду:
s.join(sequence)
можна прочитати так:
об'єкт "s" рядкового типу приймає послідовність "sequence" і об'єднує елементи цієї послідовності методом конкатенації перемежаючи елементи своїм значенням.
або ж ще простіше:
об'єднати послідовніть "sequence" за допомогою рядка "s"
Розглянемо приклади використання метода join():
>>> l = ['Red', 'Green', 'Blue'] >>> ' '.join(l) # явно вказуємо рядок, яким об'єднувати список 'Red Green Blue' >>> t = ('Good', 'bye') # кортеж — теж послідовність >>> '-'.join(t) 'Good-bye' >>> s = 'HELLO' # і символьний рядок — теж послідовність елементами якої є окремі символи >>> ' '.join(s) 'H E L L O' >>> '.'.join('017') # явно вказуємо і послідовність, і чим її об'єднувати '0.1.7' >>> ''.join( ['Sun', 'day'] ) # пустим рядком теж можна об'єднати 'Sunday' >>> >>> l = [1, 2, 3] # щоб отримати рядок об'єднувати можна, певна річ, тільки рядки >>> '-'.join(l) Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: sequence item 0: expected str instance, int found >>>
find()¶
Пошук рядка в іншому рядку.
string.find(substring)
Метод повертає індекс першого входження рядка "substring" у рядку "string". У разі якщо рядок "string" не містить рядка "substring" повертає -1.
>>> s = 'to be or not to be' >>> s.find('be') 3 >>> s.find('to') 0 >>> s.find('well') -1 >>>
upper()¶
string.upper()
Переводить усі символи рядка "string" у верхній регістр.
>>> 'hello'.upper() 'HELLO' >>> 'wElL'.upper() 'WELL' >>>
lower()¶
string.lower()
Переводить усі символи рядка "string" у нижній регістр.
>>> 'Hello'.lower() 'hello' >>> 'wElL'.lower() 'well' >>>
replace()¶
string.replace(old, new)
Шукає у рядку "string" усі входження рядка "old" і заміняє їх рядком "new".
>>> s = 'to be or not to be' >>> s.replace('be', 'beat') 'to beat or not to beat' >>> s.replace('beat', 'eat') 'to be or not to be' >>>
Немає коментарів:
Дописати коментар