Python TUPLE – Empacotar, Descompactar, Comparar, Fatiar, Excluir, Chave

O que é correspondência de tupla em Python?

Correspondência de tupla em Python é um método de agrupar as tuplas combinando o segundo elemento nas tuplas. Isso é conseguido usando um dicionário, verificando o segundo elemento em cada tupla na programação python. No entanto, podemos criar novas tuplas pegando partes das tuplas existentes.

Sintaxe da Tupla

Tup = ('Jan','feb','march')

Para escrever uma tupla vazia, você precisa escrever como dois parênteses contendo nada-

tup1 = ();

Para escrever uma tupla para um único valor, você precisa incluir uma vírgula, mesmo que haja um único valor. Também no final você precisa escrever ponto e vírgula conforme mostrado abaixo.

Tup1 = (50,);

Os índices de tupla começam em 0 e podem ser concatenados, fatiados e assim por diante.

Atribuição de tupla

Python possui recurso de atribuição de tupla que permite atribuir mais de uma variável por vez. Aqui, atribuímos a tupla 1 com as informações da pessoa como nome, sobrenome, ano de nascimento, etc. e outra tupla 2 com os valores nela contidos como número (1,2,3,….,7).

Por exemplo,

(nome, sobrenome, ano de nascimento, filme e ano preferido, profissão, local de nascimento) = Robert

Aqui está o código,

tup1 = ('Robert', 'Carlos','1965','Terminator 1995', 'Actor','Florida');
tup2 = (1,2,3,4,5,6,7);
print(tup1[0])
print(tup2[1:4])
  • Tupla 1 inclui lista de informações de Robert
  • Tupla 2 inclui uma lista de números
  • Chamamos o valor para [0] na tupla e para a tupla 2 chamamos o valor entre 1 e 4
  • Execute o código - dá o nome Robert para a primeira tupla enquanto para a segunda tupla dá o número (2,3 e 4)

Embalagem e desembalagem

Na embalagem, colocamos o valor em uma nova tupla, enquanto na descompactação extraímos esses valores de volta para as variáveis.

x = ("Guru99", 20, "Education")    # tuple packing
(company, emp, profile) = x    # tuple unpacking
print(company)
print(emp)
print(profile)

Comparando tuplas

Um operador de comparação em Python pode funcionar com tuplas.

A comparação começa com um primeiro elemento de cada tupla. Se eles não forem comparados com =,< ou > então prossiga para o segundo elemento e assim por diante.

Começa comparando o primeiro elemento de cada uma das tuplas

Vamos estudar isso com um exemplo-

#caso 1

a=(5,6)
b=(1,4)
if (a>b):print("a is bigger")
else: print("b is bigger")

#caso 2

a=(5,6)
b=(5,4)
if (a>b):print("a is bigger")
else: print ("b is bigger")

#caso 3

a=(5,6)
b=(6,4)
if (a>b):print("a is bigger")
else: print("b is bigger")

Caso 1: A comparação começa com um primeiro elemento de cada tupla. Neste caso 5>1, então a saída a é maior

Caso 2: A comparação começa com um primeiro elemento de cada tupla. Neste caso 5>5 o que é inconclusivo. Então ele prossegue para o próximo elemento. 6>4, então a saída a é maior

Caso 3: A comparação começa com um primeiro elemento de cada tupla. Neste caso 5>6 que é falso. Então ele vai para o bloco else e imprime “b é maior”.

Usando tuplas como chaves em dicionários

Como as tuplas são hasháveis ​​e a lista não, devemos usar a tupla como chave se precisarmos criar uma chave composta para usar em um dicionário.

Exemplo: Encontraríamos uma chave composta se precisássemos criar uma lista telefônica que mapeasse nome, sobrenome, pares de números de telefone, etc. Supondo que declaramos as variáveis ​​como sobrenome e primeiro número, poderíamos escrever uma instrução de atribuição de dicionário conforme mostrado abaixo:

directory[last,first] = number

No interior do brackets, a expressão é uma tupla. Poderíamos usar atribuição de tupla em um loop for para navegar neste dicionário.

for last, first in directory:
print first, last, directory[last, first]

Este loop navega pelas chaves do diretório, que são tuplas. Ele atribui os elementos de cada tupla ao último e ao primeiro e depois imprime o nome e o número de telefone correspondente.

Tuplas e dicionário

O dicionário pode retornar a lista de tuplas chamando itens, onde cada tupla é um par de valores-chave.

a = {'x':100, 'y':200}
b = list(a.items())
print(b)

Excluindo Tuplas

As tuplas são imutáveis ​​e não podem ser excluídas. Você não pode excluir ou remover itens de uma tupla. Mas excluir totalmente a tupla é possível usando a palavra-chave

del

Fatiamento de Tupla

Para buscar conjuntos específicos de subelementos de tupla ou lista, usamos esta função exclusiva chamada fatiamento. O fatiamento não é aplicável apenas a tuplas, mas também a arrays e listas.

x = ("a", "b","c", "d", "e")
print(x[2:4])

A saída deste código será ('c', 'd').

Aqui está o código Python 2 para todos os exemplos acima

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]

Funções integradas com Tuple

Para executar tarefas diferentes, Tuple permite que você use muitas funções integradas como all(), any(), enumerate(), max(), min(), sorted(), len(), tuple(), etc.

Vantagens da tupla sobre a lista

  • A iteração por tupla é mais rápida do que por lista, pois as tuplas são imutáveis.
  • Tuplas que consistem em elementos imutáveis ​​podem ser usadas como chave para dicionário, o que não é possível com lista
  • Se você tiver dados imutáveis, implementá-los como tupla garantirá que eles permaneçam protegidos contra gravação

Resumo

Python possui recurso de atribuição de tupla que permite atribuir mais de uma variável por vez.

  • Empacotando e descompactando tuplas
  • Na embalagem, colocamos o valor em uma nova tupla, enquanto na descompactação extraímos esses valores de volta para as variáveis.
  • A operador de comparação em Python pode trabalhar com tuplas.
  • Usando tuplas como chaves em dicionários
  • Tuplas são hasháveis ​​e listas não
  • Devemos usar tupla como chave se precisarmos criar uma chave composta para usar em um dicionário
  • O dicionário pode retornar a lista de tuplas chamando itens, onde cada tupla é um par de valores-chave
  • As tuplas são imutáveis ​​e não podem ser excluídas. Você não pode excluir ou remover itens de uma tupla. Mas excluir totalmente a tupla é possível usando a palavra-chave “del”
  • Para buscar conjuntos específicos de subelementos de tupla ou lista, usamos esta função exclusiva chamada fatiamento