Python TUPLE — упаковка, распаковка, сравнение, нарезка, удаление, ключ
Что такое сопоставление кортежей в Python?
Сопоставление кортежей в Python — это метод группировки кортежей путем сопоставления второго элемента в кортежах. Это достигается с помощью словаря путем проверки второго элемента в каждом кортеже в программировании на Python. Однако мы можем создавать новые кортежи, взяв части существующих кортежей.
Синтаксис кортежа
Tup = ('Jan','feb','march')
Чтобы написать пустой кортеж, вам нужно написать в виде двух ничего не содержащих круглых скобок-
tup1 = ();
Для написания кортежа для одного значения вам необходимо поставить запятую, даже если это одно значение. Также в конце нужно поставить точку с запятой, как показано ниже.
Tup1 = (50,);
Индексы кортежей начинаются с 0, и их можно объединять, нарезать и т. д.
В этом уроке мы узнаем-
- Упаковка и распаковка
- Сравнение кортежей
- Использование кортежей в качестве ключей в словарях
- Удаление кортежей
- Нарезка кортежа
- Встроенные функции Tuple
- Преимущества кортежа перед списком
Назначение кортежа
Python имеет функцию назначения кортежей, которая позволяет вам назначать более одной переменной за раз. Здесь мы назначили кортеж 1 с информацией о людях, такой как имя, фамилия, год рождения и т. д., и еще один кортеж 2 со значениями в нем, такими как число (1,2,3,….,7).
Например,
(имя, фамилия, год рождения, любимый фильм и год, профессия, место рождения) =Роберт
Вот код,
tup1 = ('Robert', 'Carlos','1965','Terminator 1995', 'Actor','Florida'); tup2 = (1,2,3,4,5,6,7); print(tup1[0]) print(tup2[1:4])
- Кортеж 1 включает список сведений о Роберте.
- Кортеж 2 включает в себя список чисел
- Мы вызываем значение для [0] в кортеже, а для кортежа 2 мы вызываем значение между 1 и 4
- Запустите код. Он дает имя Роберт для первого кортежа, а для второго кортежа он дает число (2,3 и 4)
Упаковка и распаковка
При упаковке мы помещаем значение в новый кортеж, а при распаковке извлекаем эти значения обратно в переменные.
x = ("Guru99", 20, "Education") # tuple packing (company, emp, profile) = x # tuple unpacking print(company) print(emp) print(profile)
Сравнение кортежей
Оператор сравнения в Python может работать с кортежами.
Сравнение начинается с первого элемента каждого кортежа. Если они не сравниваются с =,<или>, то он переходит ко второму элементу и так далее.
Он начинается со сравнения первого элемента каждого из кортежей
Давайте изучим это на примере-
#случай 1
a=(5,6) b=(1,4) if (a>b):print("a is bigger") else: print("b is bigger")
#случай 2
a=(5,6) b=(5,4) if (a>b):print("a is bigger") else: print ("b is bigger")
#случай 3
a=(5,6) b=(6,4) if (a>b):print("a is bigger") else: print("b is bigger")
Случай 1: Сравнение начинается с первого элемента каждого кортежа. В данном случае 5>1, поэтому выход a больше
Случай 2: Сравнение начинается с первого элемента каждого кортежа. В данном случае 5>5, что неубедительно. Таким образом, он переходит к следующему элементу. 6>4, поэтому выход a больше
Случай 3: Сравнение начинается с первого элемента каждого кортежа. В данном случае 5>6, что неверно. Поэтому он переходит в блок else и печатает «b больше».
Использование кортежей в качестве ключей в словарях
Поскольку кортежи можно хешировать, а список — нет, мы должны использовать кортеж в качестве ключа, если нам нужно создать составной ключ для использования в словаре.
Пример :мы столкнулись бы с составным ключом, если бы нам нужно было создать телефонный справочник, который отображает имя, фамилию, пары телефонных номеров и т. д. Предполагая, что мы объявили переменные как последний и первый номер, мы могли бы написать оператор присваивания словаря, как показано ниже:
directory[last,first] = number
Внутри скобок выражение представляет собой кортеж. Мы могли бы использовать присваивание кортежей в цикле for для навигации по этому словарю.
for last, first in directory:
print first, last, directory[last, first]
Этот цикл перемещается по ключам в каталоге, которые являются кортежами. Он назначает элементы каждого кортежа последним и первым, а затем печатает имя и соответствующий номер телефона.
Кортежи и словарь
Dictionary может возвращать список кортежей, вызывая элементы, где каждый кортеж является парой ключ-значение.
a = {'x':100, 'y':200} b = list(a.items()) print(b)
Удаление кортежей
Кортежи неизменны и не могут быть удалены. Вы не можете удалять или удалять элементы из кортежа. Но полное удаление кортежа возможно с помощью ключевого слова
del
Нарезка кортежа
Чтобы получить определенные наборы подэлементов из кортежа или списка, мы используем эту уникальную функцию, называемую нарезкой. Нарезка применима не только к кортежу, но также к массиву и списку.
x = ("a", "b","c", "d", "e") print(x[2:4])
Вывод этого кода будет ('c', 'e').
Вот код Python 2 для всех приведенных выше примеров
tup1 = ('Robert', 'Carlos','1965','Terminator 1995', 'Actor','Florida'); tup2 = (1,2,3,4,5,6,7); print tup1[0] print tup2[1:4] #Packing and Unpacking x = ("Guru99", 20, "Education") # tuple packing (company, emp, profile) = x # tuple unpacking print company print emp print profile #Comparing tuples #case 1 a=(5,6) b=(1,4) if (a>b):print "a is bigger" else: print "b is bigger" #case 2 a=(5,6) b=(5,4) if (a>b):print "a is bigger" else: print "b is bigger" #case 3 a=(5,6) b=(6,4) if (a>b):print "a is bigger" else: print "b is bigger" #Tuples and dictionary a = {'x':100, 'y':200} b = a.items() print b #Slicing of Tuple x = ("a", "b","c", "d", "e") print x[2:4]
Встроенные функции Tuple
Для выполнения различных задач кортеж позволяет вам использовать множество встроенных функций, таких как all(), any(), enumerate(), max(), min(), sorted(), len(), tuple() и т. д.
Преимущества кортежа перед списком
- Итерация по кортежу выполняется быстрее, чем по списку, поскольку кортежи неизменяемы.
- Кортежи, состоящие из неизменяемых элементов, можно использовать в качестве ключа для словаря, что невозможно при использовании списка.
- Если у вас есть неизменяемые данные, реализация их в виде кортежа гарантирует, что они останутся защищенными от записи.
Обзор
В Python есть функция назначения кортежей, которая позволяет назначать более одной переменной одновременно.
- Упаковка и распаковка кортежей
- При упаковке мы помещаем значение в новый кортеж, а при распаковке извлекаем эти значения обратно в переменные.
- Оператор сравнения в Python может работать с кортежами.
- Использование кортежей в качестве ключей в словарях
- Кортежи можно хешировать, а список — нет
- Мы должны использовать кортеж в качестве ключа, если нам нужно создать составной ключ для использования в словаре
- Dictionary может возвращать список кортежей, вызывая элементы, где каждый кортеж является парой ключ-значение
- Кортежи неизменяемы и не могут быть удалены. Вы не можете удалять или удалять элементы из кортежа. Но полное удаление кортежа возможно с помощью ключевого слова «del»
- Чтобы получить определенные наборы вложенных элементов из кортежа или списка, мы используем эту уникальную функцию, называемую нарезкой.
Python