Кортежі. Основні поняття. Властивості кортежів
Зміст
- 1. Поняття кортежу. Приклади. Необхідність застосування кортежів
- 2. Властивості кортежів
- 3. Відмінності між кортежами та списками
- 4. Що є спільного між кортежами та списками?
- 5. Способи (операції) створення кортежу
- 6. Приклад створення кортежу, що містить випадкові числа
- 7. Приклад пошуку заданого елементу в кортежі
- 8. Функція len(). Кількість елементів у кортежі
- 9. Яким чином вказати що об’єкт є кортежем, який складається з одного елементу?
- Зв’язані теми
Пошук на інших ресурсах:
1. Поняття кортежу. Приклади. Необхідність застосування кортежів
У мові Python кортеж – це група об’єктів різних типів, взята в круглі дужки яка не допускає зміни (є незмінюваною). Кортежі мають багато властивостей. З кортежами можна застосовувати різні операції.
Згідно документації Python, загальна форма опису класу кортежу наступна:
class tuple([iterable])
де iterable – деяка послідовність об’єктів.
Кортежі необхідні у випадках, коли потрібно використовувати фіксовані набори об’єктів. Одним з прикладів може бути використання кортежів в якості ключів до елементів словників (ключі не можна змінювати). Також використання кортежів є важливим, якщо в задачі потрібно забезепечити підтримку цілісності, тобто кортеж не може бути змінений з іншого посилання.
Якщо в задачі потрібно використовувати колекції об’єктів, що можуть бути змінені, то для цих випадків потрібно використовувати списки.
Приклади кортежів.
() # пустий кортеж (2.3,'ABCDE', False) # кортеж з 3-х елементів різних типів ('world', (2.88, "bestprog"), 3.141592) # вкладений кортеж (3.88, 2,) # Кортеж з двох елементів
⇑
2. Властивості кортежів
Для кортежів виділяють наступні властивості:
- Кортежі – це впорядковані колекції об’єктів довільних типів. Колекції об’єктів впорядковані зліва направо.
- У кортежах доступ до елементів забезепечується за зміщенням. Кортежі підтримують операції, що використовуються на зміщенні елементів, наприклад, витягування зрізу, індексування тощо.
- Кортежі відносяться до категорії незмінюваних послідовностей. До кортежів неможливо застосувати операції безпосередньої зміни. Однак, якщо елементом кортежу є змінюваний елемент (наприклад список), то цей елемент можна змінюватиу кортежі.
- Кортежі гетерогенні. Термін “гетерогенні” означає, що кортежі можуть містити інші складені об’єкти, наприклад, списки, рядки чи інші кортежі.
- Кортежі підтримують довільну кількість вкладень.
- Кортежі мають фіксовану довжину. Якщо потрібно змінити довжину кортежа, то при цьому обов’язково створюється копія кортежа у новому місці пам’яті, довжина якої інша.
- Кортежі можна представляти як масиви посилань на об’єкти.
⇑
3. Відмінності між кортежами та списками
Між кортежами та списками можна виділити наступні відмінності:
- кортеж формується у круглих дужках (), список формується у квадратних дужках [];
- кортежі відносяться до незмінюваних послідовностей, списки відносяться до змінюваних послідовностей. До кортежів неможливо застосувати операції, що безпосередньо змінюють їх. До списків такі операції застосовувати можна;
- кортежі мають фіксовану довжину (кількість елементів), списки мают змінну довжину. Якщо потрібно збільшити розмір кортежу, то потрібно створити копію;
⇑
4. Що є спільного між кортежами та списками?
Між кортежами та списками можна виділити наступні спільні особливості:
- Списки і кортежі є колекціями об’єктів або послідовностями.
- Списки і кортежі забезпечують впорядкування своїх об’єктів зліва-направо.
- Кортежі та списки можуть містити елементи (об’єкти) будь-якого типу.
- У кортежах та списках доступ до елементів здійснюється за зміщенням.
- Кортежі і списки підтримують однакові операції, що основані на використанні зміщення. Наприклад, індексування, отримання зрізу тощо.
- Кортежі і списки є гетерогенні. Це означає, що кортежі і списки можуть містити інші складені елементи (рядки, списки, кортежі).
- Кортежі і списки підтримують довільну кількість вкладень.
- Кортежі і списки дозволяють зберігати масиви посилань на інші складні об’єкти, які, в свою чергу також можуть бути кортежами, списками чи рядками.
⇑
5. Способи (операції) створення кортежу
Створити кортеж можна одним з 4 способів наведених нижче.
1. З допомогою пари пустих дужок ().
У цьому випадку створюється пустий кортеж. Наприклад
() # створюється пустий кортеж
2. У випадку одиночного кортежу з допомогою коми в кінці елементу, взятого у круглі дужки.
Наприклад.
(2, )
(True, )
3. З допомогою використання декількох елементів розділених комою і взятих у круглі дужки.
Наприклад.
(2.5, -11, 3) (a, True, "Tuples")
4. З допомогою вбудованої функції tuple().
Наприклад.
# Створення вкладених кортежів з допомогою операції = a = (2.5, -11, 3) b = (a, True, "Tuples") # b = ((2.5, -11, 3), True, 'Tuples') c = tuple(b) # c = ((2.5, -11, 3), True, 'Tuples')
⇑
6. Приклад створення кортежу, що містить випадкові числа
# Створити кортеж з послідовності з 5 цілих чисел, # які лежать в діапазоні від 0 до 10. # Для використання випадкових чисел потрібно # підключити модуль random import random # 1. Створити список з чисел lst = [] # спочатку пустий список i = 0 while i < 5: num = random.randint(0,10) lst = lst + [num] i = i+1 # 2. Створити кортеж з елементів списку a = tuple(lst) print("a = ", a) # a = (3, 0, 2, 6, 2)
Результат роботи програми
a = (4, 1, 4, 5, 7)
⇑
7. Приклад пошуку заданого елементу в кортежі
# Пошук заданого елементу в кортежі # 1. Заданий кортеж з рядків a = ('ab', 'abcd', 'cde', 'abc', 'def') # 2. Ввід шуканого рядка s = str(input("s = ")) # 3. Цикл обходу кортежу result = False # результат i = 0 while i < len(a): # len(a) - к-сть елементів у кортежі if (a[i]==s): result = True break i = i+1 if (result): print("Yes") else: print("No")
⇑
8. Функція len(). Кількість елементів у кортежі
Для визначення довжини кортежу (кількість елементів у кортежі) використовується стандартна функція len().
Приклад.
# Функція len() - кількість елементів у кортежі a = () # пустий кортеж l = len(a) # l = 0 b = (1, 3, 7, 13, 'abc', True) l = len(b) # l = 6 # Вкладений кортеж c = (a, b, "Hello", 2.33) l = len(c) # l = 4
⇑
9. Яким чином вказати що об’єкт є кортежем, який складається з одного елементу?
Щоб вказати, що об’єкт є кортежем, потрібно після елементу вказати символ ‘ , ‘ (кома). Якщо не вказати коми, то об’єкт буде сприйматись як число.
Наприклад.
# Відмінність між об'єктом, взятим в дужки () і кортежем. # Число num1, яке має значення 255 num1 = (255) num2 = num1 + 5 # num2 = 255 + 5 = 260 - додавання звичайних цілих чисел # Кортеж, що містить число 255 - в кінці вказується кома A = (255,) # B = A + 5 - заборонено, виключна ситуація
⇑
Зв’язані теми
⇑