Saiba mais sobre a função de tuplas do Python [com exemplos]
Publicados: 2020-03-20Tuplas são sequências ou uma coleção de objetos separados por vírgulas. Eles são semelhantes às listas de várias maneiras, exceto que os elementos não podem ser alterados depois de criados. E ao contrário das listas, as tuplas em Python são objetos imutáveis. Além disso, eles usam parênteses e não colchetes.
Criar uma tupla é tão simples quanto colocar valores separados por vírgulas, às vezes entre parênteses. aqui estão alguns exemplos:
- tup1 = ( 'Inglês', 'Híndi', 1998, 2016)
- tup2 = “c”, “d”, “e”, “f”
- tup3 = (5, 6, 7, 8, 9)
Como você pode ver, uma tupla pode ter qualquer número de elementos, e eles podem ser de diferentes tipos – um inteiro, uma lista, uma string e assim por diante. O uso de parênteses é opcional, mas considerado uma boa prática a ser seguida. Agora, vamos nos aprofundar nos detalhes.
Se você é iniciante e está interessado em aprender mais sobre ciência de dados, confira nossa certificação em ciência de dados das melhores universidades.
Leia sobre: Operadores em Python
Índice
Tuplas em Python
1. Criando uma tupla
Uma tupla vazia compreende dois parênteses sem nada dentro, ou seja, (). Veja como você o cria:
vazio _tup = ()
imprimir (empty_tup)
#Saída
()
Agora, vamos ver como podemos criar tuplas não vazias. A criação de tuplas sem parênteses é chamada de empacotamento de tuplas.
tup='mouse', 'teclado'
imprimir (tup)
#Saída
('mouse', 'teclado')
Como alternativa, você pode usar parênteses para a mesma saída.
tup= ('mouse', 'teclado')
imprimir (tup)
#Saída
('mouse', teclado')
Para uma tupla de elemento único, simplesmente colocar um constituinte entre parênteses não funcionaria. Você terá que incluir uma vírgula à direita para indicar que é uma tupla. Considere o exemplo a seguir.
tup=(50,)
2. Concatenação, Aninhamento e Repetição
Para concatenar duas tuplas em python , você pode escrever o seguinte código:
my_tup=(0,1,2,3,4,5)
your_tup=('olá', 'tchau')
print(my_tup + your_tup)
#Saída
(0,1,2,3,4,5, 'olá', 'tchau')
Abaixo está o código para criar tuplas aninhadas:
tup1=(0,1,2)
tup2=('python', 'aprender')
tup3=(tup1, tup2)
print(tup3)
#Saída
((0,1,2),('python','aprender'))
Para criar uma tupla com repetição, siga os passos abaixo:
new_tup=('oi',)*4
print(new_tup)
#Saída
('oi', 'oi', 'oi', 'oi')
Ao escrever o código acima sem vírgulas, você obterá uma string, hihihihi, como saída para new_tup.
Leia: Os 5 principais módulos Python
3. Acessando Tuplas
Para acessar valores em tupla, você usa colchetes com o índice. Pegue o código abaixo para testar o fatiamento.
tupla=(0,1,2,3)
print(tupla[1:])
print(tupla[::-1])
print(tupla[2:4])
#Saída
(1,2,3)
(3,2,1,0)
(2,3)
4. Lidando com a imutabilidade
Não é possível atualizar ou alterar os valores dos elementos, mas você pode criar novas tuplas pegando partes das tuplas existentes, conforme demonstrado no exemplo abaixo.
tuple1=('ab', 'xy')
tupla2=(13,14)
#ação inválida para tuplas
#tuple1[0]=50
#Criando uma nova tupla
tupla3=tupla1+tupla2
imprimir tupla3
#Saída
('ab', 'xy', 13, 14)
Da mesma forma, você não pode remover elementos individuais em tuplas, pois eles são imutáveis. No entanto, você pode montar outra tupla para descartar os constituintes indesejados. E você pode remover a tupla inteira usando a instrução del explicitamente.
tuple1=('Janeiro', Fevereiro')
del tuple1
Leia também: Salário do desenvolvedor Python na Índia
Operações básicas de tupla
Existem várias funções de tupla embutidas em python, como len(), cmp(), max(), min() e tuple(seq). Vamos demonstrar seu uso um por um.
- Encontrando o comprimento de uma tupla
my_tuple = ('upgrad', 'python')
print(len(minha_tupla))
#Saída
2
- Comparando elementos
tup1 = ('atualização','python')
tup2 = ('codificador', 1)

if (cmp(tup1, tup2) != 0):
# cmp() retorna 0 se corresponder, 1 quando não tup1
# é mais longo e -1 quando tup1 é mais curto
print('Não é o mesmo')
outro:
print('Igual')
#Saída
Não é o mesmo
- Valores máximos e mínimos
print('Elemento máximo em tuplas 1,2: ' + str(max(tup1)) + ',' + str(max(tup2)))
print('Elemento mínimo em tuplas 1,2: ' + str(min(tup1)) + ',' + str(min(tup2)))
#Saída
Elemento máximo em tuplas 1,2: atualização, codificador
Elemento mínimo nas tuplas 1,2: python,1
Você observará que as verificações max() e min() são baseadas em valores ASCII. No caso de duas strings em uma tupla, python verifica os primeiros caracteres diferentes nas strings.
- Convertendo listas e strings em tuplas
lista1 = [0, 1, 2,3]
print(tupla(lista1))
print(tuple('upgrad')) # string 'upgrad'
#Saída
(0,1,2,3)
('u', 'p', 'g', 'r', 'a', 'd')
Aqui, um único parâmetro, como uma lista, string, conjunto, chave de dicionário, é obtido e convertido em uma tupla.
Como criar uma tupla em um loop
Agora, vamos passar para a criação de tuplas em um loop. Você pode seguir o seguinte código python para fazer isso.
tuple=('python',)
n=3 #Número de tempo que o loop é executado
ou i no intervalo (int(n)):
tupla=(tupla,)
Imprimir tupla
#Saída
(('Pitão',),)
((('Pitão',),),)
(((('Pitão',),),),)
Como você pode ver, existem diferentes maneiras de criar uma tupla e iterar sobre ela.
Vantagens sobre as listas
Listas e tuplas em Python são normalmente usadas em situações semelhantes. Mas as tuplas são preferidas às listas devido a uma variedade de razões. Alguns deles estão listados abaixo.
- Tuplas são usadas para tipos heterogêneos de dados. Por outro lado, as listas são mais adequadas para tipos de dados homogêneos.
- As tuplas oferecem um aumento de desempenho, pois a iteração por elas é mais rápida em comparação com as listas. Isso se deve à sua natureza imutável.
- Você pode optar pela implementação de tuplas para manter seus dados protegidos contra gravação.
- Elementos imutáveis podem ser usados como uma chave de dicionário.
Conclusão
Neste artigo, entendemos tudo sobre tuplas em Python , desde o que são e como criá-las até suas diferentes operações e benefícios. Essas informações certamente serão úteis à medida que você avança em sua jornada de aprendizado do Python!
Se você está lendo este artigo, provavelmente tem ambições de se tornar um desenvolvedor Python. Se você estiver interessado em aprender python e quiser colocar a mão na massa em várias ferramentas e bibliotecas, confira Programa PG Executivo em Ciência de Dados .
Quais são as características das tuplas em Python?
Em Python, uma tupla é uma coleção ordenada de objetos que não podem ser alterados. Aqui, os objetos em Python podem ser qualquer coisa como inteiros, tuplas, listas, strings, etc. A ordem de inserção é preservada, pois a exibição da saída dependerá da ordem na qual os elementos são inseridos. As tuplas são imutáveis e você não pode modificar os objetos depois de adicionados à tupla. Tuplas podem armazenar tanto o mesmo quanto diferentes tipos de objetos. A indexação desempenha um papel importante nas tuplas. Você pode armazenar duplicatas em tuplas. Você pode usar índices positivos e negativos em tuplas, onde o índice positivo se refere à direção para frente e o índice negativo se refere à direção para trás. Você precisa usar uma vírgula como separador para separar objetos em uma tupla.
Existem métodos embutidos em tuplas?
Sim, existem dois métodos integrados disponíveis para uso em tuplas. As tuplas são imutáveis e você não tem permissão para alterar os objetos em uma tupla após adicioná-los. Um objeto de tupla pode chamar os dois métodos integrados disponíveis, que são count() e index(). count() retornará o número de vezes que qualquer valor específico ocorre em toda a tupla. index() pesquisará a tupla inteira pelo valor especificado e também retornará a posição onde esse valor foi encontrado.
Por que as tuplas são mais rápidas que as listas em Python?
Existem objetos mutáveis e imutáveis em Python, onde as listas são mutáveis e as tuplas são imutáveis. As tuplas são armazenadas em um único bloco de memória e não há necessidade de espaço extra para armazenar novos objetos.
Por outro lado, as listas são alocadas em dois blocos, onde um bloco armazena as informações do objeto e o outro tem um tamanho variável para adicionar novos dados. Esta é a principal razão por trás das tuplas serem mais rápidas do que as listas em Python. Essa é outra razão pela qual a indexação é mais rápida em tuplas do que em listas.