Python TUPLE - упаковка, распаковка, сравнение, нарезка, удаление, ключ

Содержание:

Anonim

Что такое сопоставление кортежей в 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".
  • Чтобы получить определенные наборы подэлементов из кортежа или списка, мы используем эту уникальную функцию, называемую нарезкой.