Зміст курсу
Вступ до Python
Вступ до Python
Кортежі та методи кортежів
Кортежі
У цьому розділі ми розглянемо кортежі — ще одну фундаментальну структуру даних у Python, яка ідеально підходить для роботи з незмінними (такими, що не підлягають зміні) послідовностями даних. Кортежі можуть бути надзвичайно корисними у нашому сценарії з продуктовим магазином.
Наприклад, нам може знадобитися зберігати записи про деталі товарів, які рідко змінюються, або забезпечити, щоб конфіденційна інформація, така як номери ID
товарів, залишалася сталою та незмінною протягом виконання програми.
Подивіться, як Олексій демонструє роботу з кортежами для забезпечення стабільного управління даними у контексті нашого магазину:
Основи кортежів
Кортежі в Python — це базова, але потужна структура даних, схожа на списки, але призначена для незмінності.
Ось основні характеристики кортежів:
Створення
Кортежі створюються шляхом розміщення значень, розділених комами, у дужках ()
(на відміну від списків, які створюються у квадратних дужках []
).
Впорядкованість
Як і у списках, елементи кортежу мають певний порядок. Цей порядок фіксований і не може бути змінений, що сприяє цілісності даних.
Незмінність
Після створення кортежу його елементи не можна змінити, додати чи видалити. Така незмінність робить кортежі надійним вибором для зберігання даних, які не повинні змінюватися протягом життєвого циклу програми.
Дублікати дозволені
Як і у списках, кортежі можуть містити кілька однакових значень, що дозволяє надійно та ефективно зберігати повторювані дані. Однак у типовому використанні дублікати в кортежах зустрічаються рідко.
Приклади
Отже, основна відмінність між кортежами та списками у Python полягає у їхній змінності. Кортежі створюються за допомогою дужок ()
і є незмінними, тобто не можуть бути змінені після створення.
Розглянемо це детальніше.
Уявімо кортеж, який категоризує різні відділи у продуктовому магазині — набір значень, що навряд чи часто змінюватиметься:
# Define a tuple with grocery store categories grocery_aisles = ("Produce", "Dairy", "Bakery", "Meat", "Frozen Foods") # Display a tuple on the screen print("Grocery Aisles:", grocery_aisles)
Елементи кортежу можна отримати за допомогою індексних номерів, аналогічно до списків. Індексація працює так само, як і у списках, дозволяючи отримати будь-який елемент за його позицією:
# Define a tuple with multiple data types apple_details = ("apple", 34, True, 1.99, "Fuji") # Get an element of a tuple by its index print("Apple Type:", apple_details[4])
Кортежі можуть містити об'єкти будь-якого типу, так само як і списки. Вони також можуть включати змінювані об'єкти, наприклад вкладені списки (або словники, про які ми поговоримо трохи пізніше). Хоча кортежі є незмінними, змінювані об'єкти всередині них все ще можна змінювати.
Візьмемо кортеж apple_details
— якщо потрібно оновити стан у списку, що містить назви штатів, це можна зробити за допомогою індексації першого та другого рівня, так само як і з вкладеними списками.
# Tuple containing various data types and a nested list apple_details = ("apple", 34, True, 1.99, "Fuji", ["Washington", "California", "Michigan"]) print(apple_details) # Updating the mutable python list even while nested in an immutable data type (tuple) apple_details[5][2] = "Pennsylvania" print(apple_details)
Методи кортежів
Хоча кортежі не підтримують методи, які змінюють їхній вміст, вони все ж надають кілька вбудованих методів для ефективного керування та використання. Ось два вбудовані методи, які можна використовувати з кортежами:
count()
: повертає кількість разів, коли вказане значення зустрічається у кортежі;index()
: шукає у кортежі вказане значення та повертає індекс позиції, де його вперше знайдено.
Примітка
Ті самі методи можна використовувати і зі списками.
# Example tuple containing a mix of integers and strings fruits = ("apple", "banana", "cherry", "apple", "banana", "cherry", "apple") # Use the `count()` method to determine how many times "apple" appears in the tuple apple_count = fruits.count("apple") print("Number of times 'apple' appears:", apple_count) # Use the `index()` method to find the first occurrence of "cherry" in the tuple cherry_index = fruits.index("cherry") print("The first occurrence of 'cherry' is at index:", cherry_index)
1. Яким буде вивід наступного коду Python?
2. Який рядок коду правильно знаходить індекс опису "Baby Spinach"
у кортежі spinachDetails
?
Дякуємо за ваш відгук!