Diferenças entre lista tupla e python

Tupla do Python vs List são as estruturas de dados mais usadas no Python. Eles armazenam uma coleção de itens, objetos ou valores em uma sequência especificada. Eles podem armazenar itens de qualquer tipo de dados e esse item pode ser acessado com a ajuda de seu índice. Essas são as semelhanças nas listas e nas tuplas, mas qual é a diferença?

A diferença é que uma tupla é imutável. Isso significa que não pode ser alterado, alterado ou manipulado. Uma tupla geralmente é usada precisamente para essa propriedade. Um dos muitos usos para tuplas Python é a descompactação de sequência, onde armazenamos os dados retornados para algumas variáveis ​​especificadas. Vejamos este exemplo para uma tupla:

teste de def ()
retorno 1, 2
a, b = teste ()
impressão (a, b)

Aqui, usamos uma tupla para retornar o valor da função e, portanto, ao imprimir o valor, não podemos modificá-lo.

Uma tupla do Python não pode ter colchetes ou parênteses como “()” É isso que ajuda o Python a entender uma lista de uma tupla. A lista Python é definida por colchetes. Sua funcionalidade é semelhante à maneira como uma matriz funciona em outros idiomas. Exemplo:

x = (1, 3, 5, 6, 2, 1, 6) impressão (x): imprime a lista completa
print (x (0), x (1)): imprime a lista iniciando no Índice 0

Muitas vezes confusas devido às suas semelhanças, essas duas estruturas são significativamente diferentes.

Comparação cara a cara entre tupla de Python x lista (infográficos)

Abaixo está a lista das 6 principais tupla de Python vs lista

Principais diferenças entre tupla do Python e lista

Abaixo estão as listas de pontos, descreva as principais diferenças entre a Tupla do Python e a Lista:

Funcionalidade de Operações

As listas têm função interna suplementar quando comparadas às tuplas. Listas e tuplas têm em comum os métodos index () e count (), mas, além disso, as listas têm muitas funções que se aplicam apenas especificamente a listas como append (), remove (), clear (), sort (), reverse ( ) etc.

Podemos usar a função embutida dir ((objeto)) para descobrir todas as funções associadas a listas e tuplas. A saída para esse comando seria a seguinte:

Objeto de lista:

('__adicionar__',
'__classe__',
'__contains__',
'__delattr__',
'__delitem__',
'__dir__',
'__doc__',
'__eq__',
'__formato__',
'__ge__',
'__getattribute__',
'__getitem__',
'__gt__',
'__cerquilha__',
'__Eu adiciono__',
'__imul__',
'__iniciar__',
'__init_subclass__',
'__iter__',
'__le__',
'__len__',
'__lt__',
'__mul__',
'__ne__',
'__Novo__',
'__reduzir__',
'__reduce_ex__',
'__repr__',
'__reversed__',
'__rmul__',
'__setattr__',
'__setitem__',
'__tamanho de__',
'__str__',
'__subclasshook__',
'acrescentar',
'Claro',
'cópia de',
'contagem',
'ampliar',
'índice',
'inserir',
'pop',
'retirar',
'marcha ré',
'ordenar')

Objeto de tupla:

('__adicionar__',
'__classe__',
'__contains__',
'__delattr__',
'__dir__',
'__doc__',
'__eq__',
'__formato__',
'__ge__',
'__getattribute__',
'__getitem__',
'__getnewargs__',
'__gt__',
'__cerquilha__',
'__iniciar__',
'__init_subclass__',
'__iter__',
'__le__',
'__len__',
'__lt__',
'__mul__',
'__ne__',
'__Novo__',
'__reduzir__',
'__reduce_ex__',
'__repr__',
'__rmul__',
'__setattr__',
'__tamanho de__',
'__str__',
'__subclasshook__',
'contagem',
'índice')

Podemos ver que existem funcionalidades adicionais vinculadas a uma lista do que a uma tupla.

Avaliação de tamanho

As operações da tupla têm um tamanho menor que o das operações da lista. Isso agiliza as operações quando há um número enorme de elementos. Vamos ver um exemplo para calcular o tamanho da lista e dos elementos da tupla.

x = (1, 2, 3, 4, 5, 6, 7, 8, 9, 0)
y = (1, 2, 3, 4, 5, 6, 7, 8, 9, 0)
print ('x =', x .__ sizeof __ ())
print ('y =', y .__ sizeof __ ())

Resultado:

x = 104
y = 120

Neste exemplo, temos uma tupla x e uma lista y com o mesmo número de itens, mas o tamanho da tupla é menor que o da lista.

Casos de uso diversos

Inicialmente, pode parecer que as listas sempre poderão substituir as tuplas, mas esse não é o caso. Podemos entender isso devido aos seguintes motivos:

  • Quando uma tupla está sendo usada, e não uma lista, ela dá ao espectador a idéia de que os dados presentes podem e não devem ser alterados.
  • As tuplas são frequentemente usadas para armazenar dados como iguais a um dicionário sem chaves.

Exemplo:

(('Empregado1', 1000), ('Empregado2', 1001), ('Empregado3', 1002))

As tuplas também podem ser usadas como chaves nos dicionários devido à sua natureza hashtable e imutável. As listas não são apropriadas para isso, pois não podem manipular a função __hash __ () e são mutáveis ​​por natureza.

valor_da_chave = (('a', 'b'): 1) #Válido
valor_da_chave = (('a', 'b'): 1) #Invalid

  • A legibilidade é aumentada, ou seja, a leitura de informações é mais fácil quando as tuplas são armazenadas em uma lista, em vez de quando as listas são armazenadas em uma lista. Exemplo:
((2, 4), (5, 7), (3, 8), (5, 9)) é mais fácil de ler do que ((2, 4), (5, 7), (3, 8), ( 5, 9))

Uso de tuplas e listas

Usamos uma tupla quando sabemos quais informações devem ser fornecidas e precisamos evitar que os valores sejam modificados, como quando precisamos armazenar credenciais para um site. As tuplas também são usadas como chaves para um dicionário porque apenas valores imutáveis ​​podem ser hash. Portanto, não podemos usar uma lista nesses casos. Se ainda queremos usar uma lista como chave, precisamos primeiro converter a lista em uma tupla.

Por outro lado, podemos usar uma lista, quando queremos modificar os valores fornecidos na coleção, e também quando não sabemos se o tamanho da nossa coleção é fixo.

Tabela de comparação de listas de tuplas de Python e listas

Abaixo está a comparação mais alta entre tuplas Python vs Listas

Recursos Listas

Tuplas

SintaxeAs listas são definidas entre colchetes ().As tuplas são definidas entre parênteses () ou sem colchetes.
Mutável vs ImutávelA lista é mutável por natureza, ou seja, pode ser alterada ou alterada após sua criação.Uma tupla é imutável por natureza, ou seja, não pode ser alterada ou alterada após sua criação.

Operações DisponíveisAs funções incorporadas na lista são mais comparadas às da tupla, por exemplo, pop (), insert (), etc.Tupla tem menos funções internas.
Comparação de tamanhosAs operações de lista são maiores em tamanho quando comparadas às operações de tupla.As operações de tupla são menores em tamanho, o que o torna mais rápido com muitos elementos.

comprimentoAs listas têm um comprimento variável.

As tuplas têm comprimentos fixos. Não podemos alterar o tamanho de uma tupla existente.
DuplicidadeAs listas podem ser copiadasTuplas não podem ser copiadas.

Conclusão

Isso é tudo sobre Tuplas do Python x Listas. Portanto, agora que entendemos as diferenças entre tuplas e listas de python, será mais fácil decidir qual dos dois deve ser usado e onde. Portanto, podemos concluir que, embora as listas e as tuplas sejam importantes estruturas de dados no Python, existem diferenças notáveis ​​entre elas, sendo a principal diferença que as listas são mutáveis, enquanto as tuplas não são.

Artigo recomendado

Este foi um guia para a diferença entre tupla e lista python. Aqui também discutimos as principais diferenças entre tupla e lista python com infográficos e tabela de comparação. Você também pode consultar os seguintes artigos para saber mais:

  1. Agile vs Waterfall - Principais diferenças
  2. Digital Ocean vs AWS
  3. Teste de Fumo vs Teste de Sanidade
  4. Como instalar o Python
  5. Tipos de compiladores Python
  6. Diferentes operações relacionadas a Tuplas
  7. Compreensão da lista Python
  8. O que é o teste de sanidade e como funciona?