- •Мета роботи
- •Короткі теоретичні відомості
- •1. Змінні, операції і вирази
- •1.1 Використання інтерпретатора Python, як калькулятора
- •1.2. Представлення тексту
- •1.3. Значення і типи
- •1.4. Перетворення типів
- •1.6. Імена змінних і ключові слова
- •Всього в Python зарезервовано 29 ключових слів:
- •1.7. Вирази
- •1.8. Виконання виразів
- •1.9. Оператори і операнди
- •1.10. Порядок операцій
- •2.1. Прості операції над стрічками
- •2.2. Оператор індексування
- •2.3. Довжина стрічки і від’ємні індекси
- •2.4. Доступ до підстрічок
- •2.5. Зміни у стрічках
- •2.4. Речення
- •3. Списки
- •3.1. Створення списків
- •3.2. Функція range
- •3.3. Списки і індекси
- •3.4. Довжина списку
- •3.5. Додатково про списки
- •3.6. Оператор del
- •4. Кортежі
- •5. Набори
- •Додаток а Сьогодні ми вивчили:
- •Методи роботи зі стрічками
- •Методи роботи зі списками
- •Порядок виконання роботи
- •Варіанти завдань
- •Література
- •Інтернет посилання
- •Методичні вказівки
4. Кортежі
Як можна було побачити раніше, списки і стрічки мають багато загальних властивостей, таких як індексація і зрізи. Вони є прикладами типів даних "послідовність". Існує ще один стандартний тип даних послідовності: кортеж.
Кортеж складається з множини значень, що розділені комами, наприклад:
>>> t = 12345, 54321, 'Привіт!'
>>> t[0]
12345
>>> t
(12345, 54321, 'hello!')
>>> # Кортежі так само можуть бути вкладеними:
... u = t (1, 2, 3, 4, 5)
>>> u
((12345, 54321, 'hello!'), (1, 2, 3, 4, 5))
Вміст кортежів завжди поміщається в круглі дужки, для того, щоб вкладені кортежі інтерпретувалися правильно; вони можуть бути введені як з, так і без навколишніх круглих дужок, хоча часто круглі дужки необхідні так чи інакше (особливо, якщо кортеж - частина більшого виразу).
Кортежі використовуються дуже часто. Наприклад: (x, у) - координати в парі, запис в базі даних тощо. Кортежі, подібно до рядків, є незмінними: неможливо змінити окремі елементи кортежу. Можна створювати кортежі, які містять змінні об'єкти, на подобі списків.
Порожні кортежі створюються парою круглих дужок без всяких елементів; кортеж з одним елементом створюється одним значенням з комою після нього (недостатньо включити одне значення в круглі дужки). Наприклад:
>>> kortez_0=()
>>> type(kortez_0)
<type 'tuple'>
>>> len(kortez_0)
0
>>> kortez_1='hello',
>>> type(kortez_1)
<type 'tuple'>
>>> len(kortez_1)
1
>>> kortez_2='by',0
>>> type(kortez_2)
<type 'tuple'>
>>> len(kortez_2)
2
Інструкція kortez_2='by',0 є типовим прикладом упаковки кортежу: значення 'by' і 0 упаковані в одному кортежі. Також можлива операція розпаковування кортежу:
>>> x,y=kortez_2
>>> x
'by'
>>> y
0
Цієї операції достатньо, щоб розпакувати послідовність. Послідовність, що підлягає розпаковуванню вимагає списку змінних зліва, щоб кількість елементів зліва збігалася з довжиною послідовності. Зверніть увагу, що множинне призначення - дійсно тільки для комбінації упаковки кортежу і його розпаковування!
Тут також слід зазначити маленьку асиметрію упаковки і розпаковування кортежів: упаковка кількох значень завжди створює кортеж, в результаті роботи розпаковування може бути будь-яка послідовність.
5. Набори
Python використовує такий тип даних як набори.
Набір - це неврегульована колекція значень без дублікатів елементів.
Основне використання полягає у тестуванні вмісту і усунення подвійних значень. Набори також підтримують математичні операції такі як, об'єднання, перетинання, порівняння, і симетричне порівняння.
>>> basket = ['apple', 'orange', 'apple', 'pear', 'orange', 'banana']
>>> fruit = set(basket) # створення набору без дублікатів
>>> fruit
set(['orange', 'pear', 'apple', 'banana'])
>>> 'orange' in fruit # швидке тестування вмісту
True
>>> 'crabgrass' in fruit
False
>>> # Демонструє операції над набором і наявність символів у вмісті набору
...
>>> а = set('abracadabra')
>>> b = set('alacazam')
>>> а # які унікальні символи є в а
set(['a', 'r', 'b', 'c', 'd'])
>>> а – b # символи в а, але що не входять в b
set(['r', 'd', 'b'])
>>> а | b # символи, що містяться в а або b
set(['a', 'c', 'r', 'd', 'b', 'm', 'z', 'l'])
>>> а & b # символи містяться і в а, і в b
set(['a', 'c'])
>>> а ^ b # символи містяться в а або в b, але не в обох словах
set(['r', 'd', 'b', 'm', 'z', 'l'])
