Blog

Postado em em 24 de maio de 2023

Tuplas no Python – Como Utilizá-las?

Nesse conteúdo, nós vamos te mostrar o que são tuplas no Python e a diferença entre elas e as listas.

As tuplas são bem parecidas com as listas, mas elas não podem ser modificadas, ou seja, não vamos poder modificar seu conteúdo. Seja adicionando, removendo e substituindo informações.

Isso é para garantir que a informação sempre fique a mesma. É muito importante principalmente para cadastros de clientes, por exemplo.

O que são Tuplas no Python?

Você que programa em Python já deve ter ouvido falar em Tuplas, mas você sabe o que?

Se não sabe ou se tem pouco conhecimento pode ficar tranquilo que hoje nós vamos abordar esse assunto aqui.

Além de explicar o que são nós vamos te mostrar a diferença entre tuplas e listas no Python para que não fiquem dúvidas!

Como Usar Tuplas no Python?

Primeiramente precisamos entender o que é uma Tupla antes de saber como construir uma tupla e como utilizá-la.

Tuplas são objetos, então vamos conseguir armazenar informações dentro delas, você já deve ter ouvido tanto disso em Listas quanto em Dicionários no Python.

OBS: Nessa aula nós vamos utilizar o Jupyter para rodar os códigos em Python, então se você ainda não tem instalado pode acessar nosso post que ensina o passo a passo para a instalação.

Aqui você pode observar que uma diferença visual entre a tupla e a lista é que na tupla nós utilizamos o parêntese para declarar as informações enquanto na lista nós utilizamos o colchete.

Uma diferença muito importante da tupla é que não conseguimos alterar as informações de dentro dela, ou seja, você não vai conseguir alterar um item dentro dela.

Então esses valores serão fixos, então não vamos poder alterar, adicionar ou remover informações de dentro da tupla.

Mas então por que vamos utilizar uma se não podemos fazer nenhuma alteração?

Na verdade, isso é muito útil para armazenamento de informações que não queremos modificar. Por exemplo, o seu CPF é algo que não vai mudar, então não queremos que alguém acidentalmente faça alguma alteração nele.

“Ah mas o que acontece se eu tentar fazer uma dessas ações? Vou perder meus dados?”

Não, o próprio programa vai te gerar um erro informando que a tupla não tem esse atributo, então sempre que tentar alterar, adicionar ou remover um item você vai ter esse erro.

Outra pergunta que você pode estar se fazendo é: “Não posso utilizar esses métodos, então quais são os métodos para tuplas no Python?”

Isso é muito fácil, basta você escrever dir(tuple) que o Python vai te mostrar uma lista de métodos que vai poder utilizar dentro de uma tupla.

Você pode fazer o mesmo procedimento para a lista, assim vai descobrir também os métodos que vai poder utilizar.

Outra utilização muito comum é criar uma lista de tuplas, ou seja, criar uma lista com informações que não podem ser alteradas.

Como é o caso desse exemplo, estamos fazendo um cadastro de um cliente com informações que não serão alteradas e vamos utilizar o método append da lista para adicionar essa tupla dentro da nossa lista.

OBS: Você vai notar que temos tanto o colchete que indica uma lista e dentro dela temos um parêntese que indica que temos um item de uma tupla.

Aqui podemos adicionar outro cliente dentro dessa lista e ele vai entrar como um segundo item dessa lista.

Tanto que se colocarmos para o Python mostrar somente o item que está na primeira posição (posição 0), ele vai trazer todas as informações do nosso primeiro cliente.

Outra aplicação é utilizar as tuplas como chaves de dicionários.

OBS: Novamente, se ainda não viu nosso post sobre dicionários, basta acessar para que entenda melhor o que são as chaves e os valores dos dicionários, mas resumidamente é como se fosse uma “chave” e uma “fechadura”. Cada informação vai ter uma correspondente.

Aqui estamos colocando os estados como chave e as capitais como valores dentro do nosso dicionário.

Aqui temos os métodos de tuplas Python, que são bem tranquilos e você já deve ter até visto em outro lugar.

Temos o Index que permite com que o usuário encontre a posição de determinada informação dentro da tupla.

OBS: Lembrando que esse método só vai mostrar a posição da primeira ocorrência e lembrando que a posição dos itens sempre começa no 0.

Temos também o Count que é para contar quantas vezes determinada informação aparece dentro da nossa tupla.

Para finalizar nós vamos deixar aqui um desafio para ver como estão seus conhecimentos de Python!

Lembrando que o gabarito está disponível para download logo no início do post, abaixo do vídeo! (Lá temos uma cartilha de tuplas também para te auxiliar quando precisar).

Como declarar tuplas?

Para declarar uma tupla no Python, basta colocar os elementos desejados entre parênteses, separados por vírgulas. 

Por exemplo, podemos criar uma tupla de nomes de frutas da seguinte forma: frutas = (“maçã”, “banana”, “laranja”)

É importante ressaltar que as tuplas possibilitam inserir elementos de diferentes tipos, como strings, números e até mesmo outras tuplas.

Como saber se existem elementos em uma tupla?

Para verificar se uma tupla contém elementos, podemos utilizar a função len(), cuja principal função é retornar o número de elementos presentes na tupla. 

Por exemplo, se tivermos uma tupla chamada numeros = (1, 2, 3), é possível usar len(numeros) para obter o valor 3, indicando que a tupla possui três elementos. Se o valor retornado for zero, significa que a tupla está vazia.

Outra forma de verificar se existem elementos em uma tupla é utilizando o operador in. Nesse caso, é possível fazer uma verificação com um elemento específico para ver se ele está presente na tupla. 

Por exemplo, podemos usar 3 in numeros para verificar se o número 3 está presente na tupla numeros. Se o resultado for True, isso indica que o elemento existe na tupla; se for False, significa que o elemento não está presente.

Ao utilizar as tuplas no Python, os programadores conseguem organizar e armazenar dados de forma eficiente, além de garantir a imutabilidade dos elementos. Ou seja, com essas estruturas de dados, é possível criar códigos mais legíveis, concisos e eficientes.

Qual a diferença entre tuplas e listas?

As tuplas e as listas são duas estruturas de dados fundamentais no Python, mas apresentam algumas diferenças importantes.

Mutabilidade 

A principal diferença entre tuplas e listas está na mutabilidade. As tuplas são imutáveis, o que significa que não é possível modificar seus elementos após a criação. Já as listas são mutáveis, pois possibilitam adicionar, remover e modificar elementos.

Sintaxe 

As tuplas são definidas usando parênteses, enquanto as listas são definidas com colchetes. Por exemplo, uma tupla seria declarada como (1, 2, 3), e uma lista seria declarada como [1, 2, 3].

Desempenho 

As tuplas tendem a ter um desempenho ligeiramente melhor do que as listas, pois são estruturas de dados mais simples e não precisam lidar com operações de modificação. Isso tende a ser relevante em situações nas quais a performance é um fator crítico.

Uso 

As tuplas são frequentemente usadas quando se deseja armazenar um conjunto de elementos imutáveis e heterogêneos, como coordenadas geográficas ou informações de data e hora. 

Já as listas são mais flexíveis e são geralmente usadas quando se precisa de uma estrutura de dados mutável para armazenar um conjunto de elementos homogêneos ou heterogêneos.

Ambas as estruturas têm seus usos específicos e é importante escolher a estrutura adequada com base nos requisitos e necessidades do projeto. 

Enquanto as tuplas são preferíveis para dados imutáveis e com foco em performance, as listas são mais adequadas para situações em que é necessário adicionar, remover ou modificar elementos.

Criando tuplas nomeadas com a função namedtuple()

Além das tuplas convencionais, o Python oferece uma função chamada namedtuple() que ajuda a criar tuplas nomeadas. Essas tuplas possuem campos nomeados, o que facilita o acesso aos elementos por meio de atributos específicos, em vez de usar apenas índices.

Ao usar a função namedtuple(), é necessário fornecer um nome para a tupla e uma sequência de campos que representam os atributos desejados. Por exemplo, ao criar uma tupla nomeada chamada Ponto, podemos especificar os campos como x, y e z. 

Dessa forma, é possível criar instâncias da tupla nomeada com atributos bem definidos, como Ponto(1, 2, 3).

As tuplas nomeadas são úteis quando é necessário armazenar dados estruturados e acessá-los de maneira mais legível e sem a necessidade de lembrar de índices específicos. 

Essa funcionalidade adiciona clareza e facilidade de uso ao trabalhar com tuplas, especialmente em casos em que a estrutura dos dados é conhecida antecipadamente.

Conclusão

Nessa aula foi possível te mostrar o que são as tuplas dentro do Python, como elas funcionam e alguns métodos.

Mostramos também qual a diferença entre elas e as listas e é claro porque utilizar um objeto que não pode ser modificado.

Vamos utilizar esse tipo de objeto sempre que as informações não puderem ser modificadas, mesmo que por acaso.

Quer sair do zero em Python e virar uma referência na sua empresa? Matricule-se agora mesmo no Python Impressionador!