вівторок, 5 листопада 2019 р.

Домашнє завдання 8 клас


Pядки
Вважають, що програмісти добре знаються в математиці, тому що працюють з числами. Насправді, більшість програмістів працюють з текстовими рядками набагато частіше, ніж з числами.
Завдяки підтримці стандарту Unicode Python 3 може містити символи будь-якої мови світу, а також багато інших символів. Необхідність роботи із стандартом Unicode була однією з причин зміни Python 2.

 Створення рядків і функція print
Python гілки 2* дозволяє брати або не брати аргументи функціїї print в дужки. Для гілки 3.* дужки обов'язкові.
Будь-яка послідовність символів, укладена в лапки, в Python вважається рядком, при цьому рядки можуть бути укладені як в одинарні, так і в подвійні лапки:
>>> 'This is a string.' 'This is a string.'
>>> "This is also a string." 'This is also a string.'
Навіщо мати два види лапок? Основна ідея полягає в тому, що ви можете створювати рядки, що містять лапки або апостроф. Тобто, усередині одинарних лапок можна розташувати подвійні і навпаки:
Можна також використовувати три одинарні (''') або три подвійні лапки ("""):
>>> '''Yes''' 'Yes'
 >>> """No""" 'No'
 Щоб змінити розділювач (за замовчуванянм, це пропуск) між елементами, які виводить функція print(), треба використати її необов’язковий параметр sep і вказати розділювач:
>>> print 'Python', 'is', 'my', 'favorite', 'language!',sep=', 'Python,is,my,favorite,language! 
 Поглянемо на використання необов’язкового параметра end функції print.
Для прикладу, запустимо наступну програму, яка збережена у окремому
файлі з певним ім’ям:
print 'Hello' print('World')
Результат виведення буде таким:
Hello World
Рядки відображаються на екрані на окремих рядках виведення, оскільки функція print() автоматично додає символи нового рядка \n в кінець рядка, який їй передається. За необхідністю, замість символа нового рядка \n можна використовувати інший рядок, вказаний з допомогою параметра end.
Наприклад для програми:
print'Hello', end='' print'World'
виведення буде таким:
HelloWorld
В даному випадку текст виводиться в один рядок, тому що відсутній символ нового рядка \n після рядка 'Hello'. Замість символа нового рядка \n виводиться порожній рядок ''. Цей прийом буде в нагоді в тих випадках, коли необхідно відмінити використання символа нового рядка \n, який автоматично додається в кінці кожного виведення за допомогою функції print. 
Згаданий вище, порожній рядок можна утворити за допомогою різних лапок:
>>> '' ''
>>> "" ''
>>> """""" ''
>>> '''''' ''
Необхідність створення порожніх рядків виникає, наприклад, при утворенні рядків з інших рядків:
>>> score = 55 >>> base = ''
 >>> base += 'checking account: '
>>> base += str(score)
>>> base 'checking account: 55'
 Розділення рядка: функція split()


Функція split() розбиває рядок на окремі рядки і розміщує їх у списку.
Використовуючи цю функції, необхідно вказати символ-розділювач (у нашому прикладі ,):
>>> dolist = 'pass algorithm, write a program, test program'
>>> dolist.split(',') ['pass algorithm', ' write a program', ' test program']
Якщо ви не вкажете символ-розділювач, функція split() буде використовувати будь-яку послідовність пропусків, а також символи нового рядка і табуляцію:
>>> dolist.split() ['pass', 'algorithm,', 'write', 'a', 'program,', 'test', 'program']

Для виклику функції split(), навіть без аргументів, все одно потрібно додавати круглі дужки - саме так Python дізнається, що викликається функція.
 Об’єднання рядків: функція join()
Функція join() є протилежністю функції split().

Функція join() об’єднує список рядків в один рядок.
Виклик функції виглядає трохи заплутано, оскільки спочатку ви вказуєте рядок, який об’єднує інші, а потім - список рядків для об’єднання: рядок.join(список рядків). В наступному прикладі об’єднаємо кілька імен в список, розділений комами і пропусками:
>>> crypto_list = ['Jumanji: Welcome to the Jungle', 'The Lost City of Z', 'Justice League']
>>> crypto_string = ', '.join(crypto_list)
>>> print 'Browse films:', crypto_string
Browse films: Jumanji: Welcome to the Jungle, The Lost City of Z, Justice League
Регістр і вирівнювання
Розглянемо ще кілька прикладів використання вбудованих у Python функцій для роботи з рядками. Створимо рядкову змінну з таким вмістом:
>>> setup = 'beetles buzzing over cherries...'
Видалимо символи . з обох кінців рядка за допомогою функції strip():
Функції rstrip() і lstrip() видаляють пропуски, а також символи нового рядка і табуляцію відповідно в кінці і на початку рядка.
>>> setup.strip('.') 'beetles buzzing over cherries' >>> setup 'beetles buzzing over cherries...'

Оскільки рядки незмінні, рядок setup не змінюється. Відбувається все так: отримують значення змінної setup, виконують над цим значенням деякі дії, а потім повертають результат як новий рядок.
Напишемо всі слова з великої літери за допомогою функції title():
>>> setup.title() 'Beetles Buzzing Over Cherries...'
Напишемо перше слово з великої літери, а всі інші символи - малими літерами за допомогою функції capitalize():
>>> setup.capitalize() 'Beetles buzzing over cherries...'
Напишемо всі слова великими літерами за допомогою функції upper():
>>> setup.upper() 'BEETLES BUZZING OVER CHERRIES...'
Напишемо всі слова малими літерами за допомогою функції lower():
>>> setup.lower() 'beetles buzzing over cherries...'
Змінимо регістр літер за допомогою функції swapcase():
>>> setup = 'Beetles buzzing over Cherries...' >>> setup.swapcase() 'bEETLES BUZZING OVER cHERRIES...'
Для вирівнювання рядків використовуються кількість місць для рядка і наступні функції: center(), ljust(), rjust().
Вирівнювання рядка по центру на проміжку із 40 місць:
>>> setup.center(40) ' beetles buzzing over cherries... '
Вирівнювання рядка за лівим краєм на проміжку із 40 місць:
>>> setup.ljust(40) 'beetles buzzing over cherries... '
Вирівнювання рядка за правим краєм на проміжку із 40 місць:
>>> setup.rjust(40) ' beetles buzzing over cherries...'
Заміна символів: функція replace()
Ви можете використовувати функцію replace() для того, щоб замінити один підрядок на інший.
Для цього треба передати у цю функцію «старий підрядок» (який треба замінити), «новий підрядок» (яким треба замінити) і кількість входжень старого підрядка: рядок.replace(старий рядок, новий підрядок, кількість замін).
Якщо не записувати останній аргумент (кількість замін), буде проведена заміна усіх входжень. Наприклад:
>>> language = 'I told my friend, "Python is my favorite language! I love to program in Python!"'
>>> language.replace('Python', 'Ruby') 'I told my friend, "Ruby is my favorite language! I love to program in Ruby!"'
Введення даних з клавіатури
Для виконання ряду програм, зазвичай, потрібна деяка інформація, яку повинен ввести користувач. Простий приклад: припустимо, користувач хоче дізнатися, чи достатній його вік для голосування. Програма повинна отримати від користувача значення - його вік; коли у програми з’являться дані, вона може порівняти їх з віком, що дає право на голосування, і повідомити результат.
Давайте дізнаємось, як отримати від користувача вхідні дані, щоб програма могла працювати з ними.
Функція input()
Для отримання вхідних даних у програмах використовується функція input().
Функція input() призупиняє виконання програми і чекає, поки користувач введе деякий текст і натисне Enter. Отримавши введення, Python зберігає його у змінній, щоб було зручніше працювати з ним.
Кожен раз, коли у вашій програмі використовується функція input(), ви повинні включати зрозумілу підказку-текст (наприклад, «Please enter your name: »), яка точно повідомить користувачеві, яку інформацію від нього хочуть отримати. Наприклад, для даного фрагменту коду додайте пробіл в кінці підказки (після двокрапки), щоб відокремити підказку від даних, що вводяться користувачем, і чітко показати, де повинен вводитися текст:
>>> name = input("Please enter your name: ") Please enter your name: Alex
>>> print("Hello, " + name + "!") Hello, Alex!
При використанні функції input() Python інтерпретує всі дані, введенні користувачем, як рядок. У наступному сеансі інтерпретатора програма запитує у користувача вік:
>>> age = input("How old are you? ") How old are you? 25
>>> age '25'
Користувач вводить число 25, але, коли ми запитуємо у Python значення age, виводиться '25' - введене число в рядковому форматі. Лапки, в яких знаходяться дані, вказують на те, що Python інтерпретує введення як рядок.
Спроба використовувати введені дані як число викликає помилку:
Коли ви намагаєтеся порівняти введені дані з числом, Python видає помилку, тому що не може порівняти рядок з числом: рядок '25', що зберігається в age, порівнюється з числовим значенням 18; відбувається помилка. Проблему можна вирішити за допомогою функції int(), яка інтерпретує рядок як числове значення


Немає коментарів:

Дописати коментар