Em Python, uma tupla é um tipo de sequência imutável. É definido sintaticamente por um par de parênteses (), e os elementos internos são separados por vírgulas. Ao contrário das listas, as tuplas não podem ser modificadas depois de criadas, o que significa que você não pode adicionar, excluir ou alterar elementos dentro da tupla. Essa imutabilidade torna as tuplas mais adequadas do que as listas em determinados cenários, como chaves de dicionário ou valores de retorno de função.
A imutabilidade das tuplas traz algumas vantagens. Primeiro, por serem imutáveis, as tuplas podem ser acessadas com segurança por vários threads em um ambiente multitarefa. Em segundo lugar, as tuplas podem economizar mais espaço do que as listas porque o Python realiza algumas otimizações em sequências imutáveis. Novamente, o uso de tuplas quando uma sequência não deve ser modificada pode ser usado como uma proteção para evitar que ela seja alterada acidentalmente.
Criar uma tupla é simples, basta somar os valores entre parênteses e separá-los por vírgula. Se quiser criar uma tupla vazia, você pode escrever um par entre parênteses sem conteúdo, como (). Uma tupla de elemento único requer uma vírgula após o elemento, como (elemento,), para que o Python possa reconhecê-lo como uma tupla.
Uma maneira de criar uma tupla é colocar diretamente um conjunto de valores entre parênteses, por exemplo:
minha_tupla = (1, 2, 3)
Se os elementos da tupla já estiverem determinados, podemos especificá-los diretamente quando a criarmos inicialmente.
As tuplas também suportam uma operação chamada "descompactação", que atribui os valores dentro da tupla a diferentes variáveis. Por exemplo:
a, b, c = minha_tupla
Este método é muito conveniente para atribuir múltiplas variáveis ao mesmo tempo em uma única linha de código.
Depois que uma tupla é criada, seus elementos não podem ser alterados. Isso significa que você não pode adicionar elementos a uma tupla existente, remover elementos dela ou alterar seus elementos.
A imutabilidade torna as tuplas a "versão constante" de uma sequência. Como as tuplas são imutáveis, elas podem ser amplamente utilizadas em Python como armazenamento constante de dados. Além disso, tipos imutáveis podem frequentemente ser usados como chaves de dicionário, algo que tipos mutáveis como listas não podem fazer.
Embora a modificação direta dos elementos dentro da tupla não seja permitida, se a tupla contiver objetos mutáveis (como listas), você ainda poderá modificar esses objetos mutáveis. Por exemplo:
t = (1, 2, [3, 4])
t[2][0] = 100 # Esta operação é válida porque a lista é modificada e a lista é variável.
Embora as tuplas não possam ser modificadas, você pode realizar operações básicas, como calcular o comprimento das tuplas, concatenar e repetir tuplas e verificar a associação.
Você pode obter o comprimento de uma tupla usando a função integrada len(). Cada elemento da tupla possui um índice, começando em 0 e aumentando, e os elementos da tupla podem ser acessados por meio do índice.
Você pode concatenar várias tuplas com o operador + e repetir tuplas com o operador *. Por exemplo:
t1 = (1, 2, 3)
t2 = (4, 5, 6)
t3 = t1 + t2 # (1, 2, 3, 4, 5, 6)
t4 = t1 * 3 # (1, 2, 3, 1, 2, 3, 1, 2, 3)
Devido à imutabilidade das tuplas, elas são frequentemente usadas para valores de retorno de funções. Especialmente quando você deseja que uma função retorne vários valores, as tuplas são úteis.
Quando uma função precisa retornar vários valores, usar um retorno de tupla é uma forma muito concisa. Por exemplo:
def min_max(num):
retornar min(num), max(num)
Ao chamar uma função como esta, você pode usar a descompactação diretamente para obter os vários valores retornados:
mn, mx = min_max(números)
As tuplas são usadas em uma ampla variedade de aplicações em Python, desde o simples armazenamento de estrutura de dados até parâmetros de função e valores de retorno, as tuplas desempenham um papel importante.
As tuplas são inerentemente uma boa estrutura para armazenar registros. Por exemplo, você pode usar uma tupla para armazenar o nome e o número do cargo de um funcionário.
Quando você deseja que os parâmetros dentro de uma função permaneçam inalterados, usar tuplas em vez de listas é uma boa opção porque os dados dentro das tuplas não podem ser modificados.
As tuplas são amplamente utilizadas em vários cenários em Python devido à sua simplicidade e eficiência, proporcionando flexibilidade aos programas e garantindo a integridade e imutabilidade dos dados. Compreender e dominar o uso de tuplas é muito importante para a programação Python.
1. O que é tupla em Python? Como declarar e inicializar tupla?
Tupla é um tipo de dados em Python, que é uma sequência ordenada e imutável. Ao contrário de uma lista, os elementos de uma tupla não podem ser modificados. Para declarar e inicializar uma tupla, coloque os elementos entre parênteses e separe-os com vírgulas. Por exemplo, tupla1 = (1, 2, 3) é uma tupla contendo três elementos inteiros.
2. Como posso acessar e manipular elementos de uma tupla?
Os elementos de uma tupla podem ser acessados usando índices. Os índices começam em 0 e podem ser usados índices positivos e negativos. Por exemplo, tuple1[0] retorna o primeiro elemento, tuple1[-1] retorna o último elemento. Além disso, fatias podem ser usadas para acessar subconjuntos de tuplas. Por exemplo, tuple1[1:3] retornará a subtupla do segundo ao quarto elemento.
Como as tuplas são imutáveis, os elementos não podem ser adicionados ou removidos de uma tupla. No entanto, se os elementos da tupla forem mutáveis (como uma lista), eles poderão ser modificados. Por exemplo, tuple2 = ([1, 2, 3], 'a', 'b'), você pode modificar os elementos da lista em tuple2[0].
3. Como usar as características das tuplas para escrever código eficiente em Python?
As tuplas têm várias propriedades que fornecem eficiência e simplicidade adicionais ao escrever código Python. Primeiro, as tuplas não podem ser modificadas após a criação, o que significa que são seguras em ambientes multithread. Em segundo lugar, as tuplas podem ser usadas como chaves de dicionário, mas as listas não. Além disso, as tuplas também podem ser usadas como parâmetros de função e retornar valores para passar vários valores de maneira conveniente. Essas propriedades tornam as tuplas mais úteis em situações em que são necessários objetos imutáveis, como o uso de tuplas como chaves em um mapa ou tabela hash. Quando você precisar usar objetos imutáveis em seu código, considere usar tuplas para melhorar a legibilidade e o desempenho do código.