Что такое сопоставление кортежей в Python?
Сопоставление кортежей в Python - это метод группировки кортежей путем сопоставления второго элемента в кортежах. Это достигается с помощью словаря путем проверки второго элемента в каждом кортеже в программировании на Python. Однако мы можем создавать новые кортежи, взяв части существующих кортежей.
Синтаксис кортежа
Tup = ('Jan','feb','march')
Чтобы записать пустой кортеж, вам нужно написать в виде двух круглых скобок, ничего не содержащих:
tup1 = ();
Чтобы записать кортеж для одного значения, вам нужно включить запятую, даже если есть одно значение. Также в конце нужно поставить точку с запятой, как показано ниже.
Tup1 = (50,);
Индексы кортежей начинаются с 0, и их можно объединять, нарезать и так далее.
В этом уроке мы узнаем:
- Упаковка и распаковка
- Сравнение кортежей
- Использование кортежей в качестве ключей в словарях
- Удаление кортежей
- Нарезка кортежа
- Встроенные функции с кортежем
- Преимущества кортежа над списком
Присвоение кортежа
Python имеет функцию назначения кортежей, которая позволяет вам назначать более одной переменной за раз. Здесь мы назначили кортеж 1 с информацией о лицах, такой как имя, фамилия, год рождения и т. Д., И другой кортеж 2 со значениями в нем, такими как число (1,2,3,
…., 7).Например,
(имя, фамилия, год рождения, любимый фильм и год, профессия, место рождения) = Роберт
Вот код,
tup1 = ('Роберт', 'Карлос', '1965', 'Терминатор 1995', 'Актер', 'Флорида');tup2 = (1,2,3,4,5,6,7);печать (tup1 [0])печать (tup2 [1: 4])
- Кортеж 1 включает список информации Роберта
- Кортеж 2 включает в себя список чисел
- Мы называем значение для [0] в кортеже, а для кортежа 2 мы называем значение от 1 до 4.
- Запустите код - он дает имя Роберт для первого кортежа, а для второго кортежа он дает номер (2,3 и 4)
Упаковка и распаковка
При упаковке мы помещаем значение в новый кортеж, а при распаковке извлекаем эти значения обратно в переменные.
x = ("Guru99", 20, "Education") # упаковка кортежа(company, emp, profile) = x # распаковка кортежапечать (компания)печать (жирный шрифт)печать (профиль)
Сравнение кортежей
Оператор сравнения в Python может работать с кортежами.
Сравнение начинается с первого элемента каждого кортежа. Если они не сравниваются с =, <или>, тогда выполняется переход ко второму элементу и так далее.
Он начинается со сравнения первого элемента из каждого кортежа.
Давайте изучим это на примере -
#Случай 1
а = (5,6)Ь = (1,4)if (a> b): print («а больше»)else: print ("b больше")
#case 2
а = (5,6)Ь = (5,4)if (a> b): print («а больше»)else: print ("b больше")
#case 3
а = (5,6)Ь = (6,4)if (a> b): print («а больше»)else: print ("b больше")
Случай 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 может возвращать список кортежей, вызывая items, где каждый кортеж является парой значений ключа.
a = {'x': 100, 'y': 200}b = список (a.items ())печать (б)
Удаление кортежей
Кортежи неизменяемы и не могут быть удалены. Вы не можете удалять или удалять элементы из кортежа. Но полностью удалить кортеж можно с помощью ключевого слова
del
Нарезка кортежа
Чтобы получить определенные наборы подэлементов из кортежа или списка, мы используем эту уникальную функцию, называемую нарезкой. Нарезка применима не только к кортежу, но также к массиву и списку.
x = ("a", "b", "c", "d", "e")печать (x [2: 4])
Результатом этого кода будет ('c', 'd').
Вот код 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 Unpackingx = ("Guru99", 20, "Education") # tuple packing(company, emp, profile) = x # tuple unpackingprint companyprint empprint profile#Comparing tuples#case 1a=(5,6)b=(1,4)if (a>b):print "a is bigger"else: print "b is bigger"#case 2a=(5,6)b=(5,4)if (a>b):print "a is bigger"else: print "b is bigger"#case 3a=(5,6)b=(6,4)if (a>b):print "a is bigger"else: print "b is bigger"#Tuples and dictionarya = {'x':100, 'y':200}b = a.items()print b#Slicing of Tuplex = ("a", "b","c", "d", "e")print x[2:4]
Встроенные функции с кортежем
Для выполнения различных задач кортеж позволяет использовать множество встроенных функций, таких как all (), any (), enumerate (), max (), min (), sorted (), len (), tuple () и т. Д.
Преимущества кортежа над списком
- Итерация по кортежу выполняется быстрее, чем по списку, поскольку кортежи неизменяемы.
- Кортежи, состоящие из неизменяемых элементов, могут использоваться в качестве ключа для словаря, что невозможно со списком.
- Если у вас есть неизменяемые данные, реализация их в виде кортежа гарантирует, что они останутся защищенными от записи.
Резюме :
Python имеет функцию назначения кортежей, которая позволяет вам назначать более одной переменной за раз.
- Упаковка и распаковка кортежей
- При упаковке мы помещаем значение в новый кортеж, а при распаковке извлекаем эти значения обратно в переменные.
- Оператор сравнения в Python может работать с кортежами.
- Использование кортежей в качестве ключей в словарях
- Кортежи можно хешировать, а список - нет.
- Мы должны использовать кортеж в качестве ключа, если нам нужно создать составной ключ для использования в словаре.
- Словарь может возвращать список кортежей, вызывая элементы, где каждый кортеж представляет собой пару ключ-значение.
- Кортежи неизменяемы и не могут быть удалены. Вы не можете удалять или удалять элементы из кортежа. Но полностью удалить кортеж можно с помощью ключевого слова "del".
- Чтобы получить определенные наборы подэлементов из кортежа или списка, мы используем эту уникальную функцию, называемую нарезкой.