Найти в Дзене
Креативный дизайн

Коллекция кортежей в Python

Python предоставляет несколько различных типов коллекций данных, таких как списки, словари и множества. Одним из самых простых и часто используемых является кортеж. Кортежи используются для хранения неизменяемого упорядоченного набора значений. В этой статье рассмотрим основные особенности использования кортежей в Python, их преимущества и отличия от других структур данных. Кортеж — это неизменяемая последовательность, состоящая из произвольного количества элементов. Элементы кортежа могут быть различного типа и размера. Они заключаются в круглые скобки () и являются более эффективными по сравнению со списками в плане использования памяти и производительности. Кортежи особенно полезны, когда данные должны оставаться неизменными. Для преобразования в кортеж используется функция tuple. Кортеж — это неизменяемый тип данных, и в скобках цифры изменять нельзя. То есть элементы кортежа изменять нельзя. И у него нет методов, которые могут изменять его элементы. Кортеж по английски tuple. Прин
Оглавление

Введение

Python предоставляет несколько различных типов коллекций данных, таких как списки, словари и множества. Одним из самых простых и часто используемых является кортеж. Кортежи используются для хранения неизменяемого упорядоченного набора значений. В этой статье рассмотрим основные особенности использования кортежей в Python, их преимущества и отличия от других структур данных.

Что такое кортеж?

Кортеж — это неизменяемая последовательность, состоящая из произвольного количества элементов. Элементы кортежа могут быть различного типа и размера. Они заключаются в круглые скобки () и являются более эффективными по сравнению со списками в плане использования памяти и производительности. Кортежи особенно полезны, когда данные должны оставаться неизменными.

Для преобразования в кортеж используется функция tuple.

Кортеж — это неизменяемый тип данных, и в скобках цифры изменять нельзя. То есть элементы кортежа изменять нельзя. И у него нет методов, которые могут изменять его элементы.

Кортеж по английски tuple.

Принцип работы кортежа похож на списки, но и есть некоторые отличия.

Если функция возвращает сразу несколько значений, то в результате возвращается кортеж из этих значений. И их можно присвоить переменным, даже не используя индексы.

Кортеж лучше использовать, когда нам не требуется изменять какие-либо данные.

Особенности работы кортежа:

  • Занимает меньше памяти, и поэтому экономит место;
  • Прирост производительности, так как кортеж работает быстрее, чем списки;
  • На операции перебора элементов тратится гораздо меньше времени.

Рассмотрим практический пример использования кортежей

Условия задачи:

У нас имеется предустановленный, известный нам начальный список последовательности чисел.

Мы вызываем специальную функцию, которая будет изменять этот список, прибавляя 6 к каждому значению (цифре) списка.

В результате нам необходимо не изменить исходный список, а сформировать по нему новый список, с помощью создания его из нашего списка кортежа.

Пример кода:

Выше написано правильное написание кода
Выше написано правильное написание кода
Тот же код ниже для копирования и вставки в программу. Не забывайте про необходимый отступ пробелами в определённых местах в начале строки, так как код на сервере блога может отображаться некорректно.

def add_num(seq, number): # Создание функции, для взятия последовательности чисел
seq = list(seq) # Получение из параметра seq списка
for i_num in range(len(seq)):
seq[i_num] += number # Прибавляется к каждому значению кортежа number
return seq # Получение нового списка

origin_tuple = (1, 2, 3, 4, 5, 6)
changen_list = add_num(origin_tuple, 6)
print(origin_tuple) # Возвращение оригинальной последовательности цифр
print(changen_list) # Возвращение полученной новой последовательности, увеличенного каждого символа кортежа на 5

Пример работы кода:

Результаты работы кода

(1, 2, 3, 4, 5, 6)
[7, 8, 9, 10, 11, 12]
Результаты работы кода (1, 2, 3, 4, 5, 6) [7, 8, 9, 10, 11, 12]

Пример использования кортежей

# Создание кортежа
origin_tuple = (1, 2, 3, 4, 5, 6)

# Преобразование списка в кортеж
list_to_tuple = tuple([1, 2, 3])

# Изменение кортежа в список
list_from_tuple = list(origin_tuple)

# Проверка наличия элемента в кортеже

-4

# Доступ к элементам кортежа
first_element = origin_tuple[0]
last_element = origin_tuple[-1]

# Преобразование кортежа в строку
str_representation = str(origin_tuple)
print(str_representation)

Основные свойства кортежей

  1. Неизменяемость: Элементы кортежа невозможно изменить после его создания. Это отличает кортежи от списков, где каждый элемент может быть изменён.
  2. Последовательность: Кортежи содержат фиксированное количество элементов, расположенных в определённом порядке.
  3. Эффективность: По сравнению со списками, кортежи используют меньше памяти и работают быстрее при выполнении операций перебора элементов.
  4. Поддержка индексации и срезов: Как и списки, кортежи поддерживают доступ к отдельным элементам через индексы и использование срезов для получения подмножества элементов.
  5. Преобразование в другие коллекции: С помощью функций tuple или list, кортеж можно легко преобразовать в список или обратно.

Основные свойства кортежей с примерами (сходство со списками):

  • Кортежи те же самые списки, но только неизменяемые списки, и у них есть так же индексы.

nums = (15, 25, 35, 45, 55)

nums[2] # Вывод на консоль: 35. То есть мы можем брать цифры по индексу.

-5
  • Можем брать в кортежах срезы. Например,

nums[2:] # Вывод на консоль: (35 45 55)

-6
  • Можем проверять наличие элемента. Например,

30 in nums # Выведет: False

-7
  • Кортеж имеет свои методы
-8
  • В кортежах могут храниться числа и строки, списки и кортежи.

Отличительные особенности кортежей от списков:

  • Для кортежей не обязательно прописывать круглые скобки. Пример:

user = 'Anton', 'Kozlov', '53'

user # Выведет: ('Anton', 'Kozlov', '53')

-9
  • Кортеж легко разложить на переменные кортежа, путём простого перечисления нужных переменных. Присваивание нашего кортежа разным (в нашем случае трём) переменным позволит быстро вывести соответствующие значения на консоль.

Пример работы в Python Console:

user = 'Anton', 'Kozlov', '53'

user

('Anton', 'Kozlov', '53')

name, surname, age = user # Переменные кортежа

name

'Anton'

surname

'Kozlov'

age

'53'

-10

Использование кортежей в программировании

Кортежи часто применяются в ситуациях, когда требуется хранить набор неизменяемых данных. Вот несколько примеров использования кортежей:

  1. Хранение координат: Часто кортежи используются для хранения координат точек на плоскости, например, (x, y).
  2. Пакеты данных: В некоторых случаях кортежи удобно использовать для передачи нескольких параметров между функциями.
  3. Строковые представления: Для передачи нескольких аргументов в функцию или метод, где порядок важен.

Заключение

Кортежи — это мощная и удобная структура данных в Python, которая позволяет эффективно работать с неизменяемыми наборами данных. Их основными преимуществами являются эффективность, безопасность и возможность лёгкого преобразования в другие типы коллекций. Однако стоит помнить, что кортежи не предназначены для хранения изменяющихся данных, и в таких случаях лучше использовать списки.

ПОЛЕЗНЫЕ РЕСУРСЫ:

---------------------------------------------------

Сообщество дизайнеров в VK

https://vk.com/grafantonkozlov

Телеграмм канал сообщества

https://t.me/grafantonkozlov

Архив эксклюзивного контента

https://boosty.to/antonkzv

Канал на Дзен

https://dzen.ru/grafantonkozlov

---------------------------------------------------

Бесплатный Хостинг и доменное имя

https://tilda.cc/?r=4159746

Мощная и надежная нейронная сеть Gerwin AI

https://t.me/GerwinPromoBot?start=referrer_3CKSERJX

GPTs — плагины и ассистенты для ChatGPT на русском языке

https://gptunnel.ru/?ref=Anton

---------------------------------------------------