JavaRush/Курси/Модуль 1: Python Core/Робота з кортежами

Робота з кортежами

Відкрита

11.1 Визначення кількості елементів у кортежі

Кортежі — це незмінювані послідовності, які можуть містити різні типи даних. Використання вбудованої функції len() для кортежу дозволяє визначити кількість елементів у ньому. Давайте почнемо з цього.

Приклад використання функції len() з кортежем:

my_tuple = (1, 2, 3, 4, 5)
print(len(my_tuple))  # Виведе 5

У функцію len() можна передати як змінну, що містить кортеж, так і сам кортеж напряму. Приклади:

print(len(()))  # Виведе 0
print(len((1, 2, 3)))  # Виведе 3
print(len(((1, 2, 3),)))  # Виведе 1

Якщо не рахувати розпакування кортежу, то визначення кількості його елементів – це найчастіша операція з кортежем 😊

11.2 Тип кортежу

Використання функції type() при роботі з кортежами (tuple) дозволяє вам визначити, чи є змінна кортежем, що особливо важливо в контексті динамічної типізації в Python.

Приклад:

my_tuple = (1, 2, 3)
print(type(my_tuple))  # Виведе <class 'tuple'>

Перевірка на те, що змінна містить потрібний тип виглядає так:

my_tuple = (1, 2.5, 'string', [3, 4])
if type(my_tuple) == tuple:
    print("Tuple!")  # Виведе: Tuple!

11.3 Отримання елемента

Отримання елементів кортежу (tuple) здійснюється через індексацію, подібно до списків. Кортежі — це впорядковані та незмінювані колекції, що дозволяє отримувати доступ до елементів за їхнім індексом.

Важливо! Індекси починаються з нуля, тому перший елемент кортежу має індекс 0, другий — 1, і так далі. Python також підтримує від'ємні індекси, де -1 посилається на останній елемент кортежу, -2 — на передостанній і так далі:

Щоб звернутися до конкретного елемента кортежу, використовуйте квадратні дужки з індексом елемента. Загальний вигляд такої операції має вигляд:

tuple[індекс]

Приклад:

my_tuple = ('apple', 'banana', 'cherry')
print(my_tuple[1])  # Виведе 'banana'
print(my_tuple[2])  # Виведе 'cherry'

Так само, як і при роботі зі списками, кортеж підтримує від'ємні індекси.

Отримання останнього елемента з кортежу:

my_tuple = ('apple', 'banana', 'cherry')
print(my_tuple[-1])  # Виведе 'cherry'

Отримання передостаннього елемента з кортежу:

my_tuple = ('apple', 'banana', 'cherry')
print(my_tuple[-2])  # Виведе 'banana'
2
Задача
Модуль 1: Python Core,  5 рівень,  10 лекція
Недоступна
Кортеж користувача
Кортеж користувача
2
Задача
Модуль 1: Python Core,  5 рівень,  10 лекція
Недоступна
Номер кортежу
Номер кортежу
Коментарі (14)
  • популярні
  • нові
  • старі
Щоб залишити коментар, потрібно ввійти в систему
Ivan Uhliai
Рівень 3
17 червня, 11:07
Для тих хто не зрозумів, "Кортеж користувача" можна виконати, якщо додати новий елемент в Input data. Достатньо добавити Enter і нескінчений цикл робочий
Аліна
Рівень 21
13 квітня, 20:24
Таска 22 - сложная конструкция! почему вы строите задачи аким образом, когда материал не соответствует уровню сложноси задач.
Gena
Рівень 45
20 березня, 21:19
Використав такий вираз, в теорії чомусь не було: tuple_quantity = () tuple_quantity = (*tuple_quantity, quantity) *tuple_quantity - береться попередній кортеж розпаковується та додається елемент quantity в кортеж. Не потрібно переганяти зі списку в кортеж
Андрій
Рівень 40
12 лютого, 16:03
Таке враження, що під час складання умов задач наші боги алгоритмів самі забувають про try / exept
Serhii Lohachov
Рівень 43
12 грудня 2025, 23:28
Задачу "Кортеж користувача" краще рішати в PyCharm, бо тут вірне рішення не проходило через "мабуть ви використовуєте бескінечний цикл"
Alex Stasyuk
Рівень 25
4 грудня 2025, 21:30
Задача task22 про номер кортежу: my_tuple = ([input() for i in range(5)]) запитує рівно 5 разів. Але аналізатор хоче for. Замість читання елементів до введення 'стоп', потрібно читати рівно 5 елементів (наприклад, у циклі for 5 разів) і створювати кортеж з цих п'яти значень. Тепер питання до авторів: а якже best practics?
Оксана
Рівень 93
25 серпня 2025, 09:22
з перевіркою: if element == "стоп": спрацювало!!!
Максим
Рівень 9
18 березня 2025, 12:29
task21: правильне рішення:
elements = []
print("Введіть елементи кортежу (щоб завершити введення, просто натисніть Enter):")
while True:
    element = input()
    if element == "":
        break
    elements.append(element)

tuple_elements = tuple(elements)

if tuple_elements:
    print(f"Останній елемент кортежу: {tuple_elements[-1]}")
else:
    print("Кортеж порожній")
цикл бескінечний))
Максим
Рівень 9
18 березня 2025, 12:39
в input data 100% немає вводу Enter (переносу строки)
Максим
Рівень 9
18 березня 2025, 12:57
тут треба робити
break
за умови що користувач введе "стоп" але цього не вказано в завданні
Дмитро
Рівень 31
3 квітня 2025, 16:15
Так він і не перевіряє на символ "Enter (переносу строки)" Він перевіряє на те що строка порожня, а так і буде якщо замість вводу одразу настиснути "Enter"
Сергій
Рівень 1
22 грудня 2024, 07:24
Привіт. Чому індекс має бути від 0 до 4? Як на рахунок від'ємних індексів від -1 до -4?
Mykola
Рівень 21
30 січня 2025, 18:34
Привіт. Ну python же підтримує від'ємні індекси. Якщо б умова задачі вимагала, то можна використати і їх.
Дмитро
Рівень 31
3 квітня 2025, 16:11
if n > 4 or n < -5 : Я просто це в перевірці врахував