Python TUPLE – Empacotar, Descompactar, Comparar, Fatiar, Excluir, Chavear
Em que consiste a correspondência de tupla 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 trabalhar 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
Dentro dos colchetes, 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 Python 2 Código 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