Diferencias entre Python Tuple vs List

Python Tuple vs List es la estructura de datos más utilizada en Python. Almacenan una colección de artículos, ya sean objetos o valores en una secuencia específica. Pueden almacenar elementos de cualquier tipo de datos y se puede acceder a este elemento con la ayuda de su índice. Estas son las similitudes en listas y tuplas, pero ¿cuál es la diferencia?

La diferencia es que una tupla es inmutable. Esto significa que no puede ser alterado, cambiado o manipulado. Una tupla generalmente se usa precisamente para esta propiedad. Uno de los muchos usos de las tuplas de Python es el desempaquetado de secuencias, donde almacenamos los datos devueltos a unas pocas variables específicas. Veamos este ejemplo para una tupla:

prueba de def ()
devolver 1, 2
a, b = prueba ()
imprimir (a, b)

Aquí, hemos usado una tupla para devolver el valor de la función y, por lo tanto, al imprimir el valor, no podemos modificarlo.

Una tupla de Python puede no tener paréntesis o paréntesis como "()" Esto es lo que ayuda a Python a comprender una lista de una tupla. La lista de Python se define entre corchetes. Su funcionalidad es similar a cómo funciona una matriz en otros idiomas. Ejemplo:

x = (1, 3, 5, 6, 2, 1, 6) print (x): Imprime la lista completa
print (x (0), x (1)): imprime la lista comenzando en el índice 0

A menudo confundidos debido a sus semejanzas, estas dos estructuras son significativamente diferentes.

Comparación cara a cara entre Python Tuple vs List (Infografía)

A continuación se muestra la lista de las 6 principales tuplas de comparación de Python

Diferencias clave entre Python Tuple vs List

A continuación se encuentran las listas de puntos, describa las diferencias clave entre Python Tuple vs List:

Funcionalidad de operaciones

Las listas tienen una función incorporada complementaria en comparación con las tuplas. Las listas y las tuplas tienen en común los métodos index () y count (), pero aparte de estos, las listas tienen muchas funciones que se aplican solo específicamente a listas como append (), remove (), clear (), sort (), reverse ( ), etc.

Podemos usar la función incorporada dir ((objeto)) para encontrar todas las funciones asociadas con listas y tuplas. El resultado de dicho comando sería el siguiente:

Objeto de lista:

('__añadir__',
'__clase__',
'__contains__',
'__delattr__',
'__delitem__',
'__dir__',
'__Doc__',
'__eq__',
'__formato__',
'__ge__',
'__getattribute__',
'__obtiene el objeto__',
'__gt__',
'__picadillo__',
'__añado__',
'__imul__',
'__en eso__',
'__init_subclass__',
'__iter__',
'__le__',
'__len__',
'__lt__',
'__mul__',
'__Nebraska__',
'__nuevo__',
'__reducir__',
'__reduce_ex__',
'__repr__',
'__ invertido__',
'__rmul__',
'__setattr__',
'__setitem__',
'__tamaño de__',
'__str__',
'__subclasshook__',
'adjuntar',
'claro',
'Copiar',
'contar',
'ampliar',
'índice',
'insertar',
'popular',
'eliminar',
'marcha atrás',
'ordenar')

Objeto Tupla:

('__añadir__',
'__clase__',
'__contains__',
'__delattr__',
'__dir__',
'__Doc__',
'__eq__',
'__formato__',
'__ge__',
'__getattribute__',
'__obtiene el objeto__',
'__getnewargs__',
'__gt__',
'__picadillo__',
'__en eso__',
'__init_subclass__',
'__iter__',
'__le__',
'__len__',
'__lt__',
'__mul__',
'__Nebraska__',
'__nuevo__',
'__reducir__',
'__reduce_ex__',
'__repr__',
'__rmul__',
'__setattr__',
'__tamaño de__',
'__str__',
'__subclasshook__',
'contar',
'índice')

Podemos ver que hay funcionalidades adicionales vinculadas con una lista que para una tupla.

Evaluación de tamaño

Las operaciones de tupla tienen un tamaño menor que el de las operaciones de lista. Esto hace que las operaciones sean más rápidas cuando hay una enorme cantidad de elementos. Veamos un ejemplo para calcular el tamaño de la lista y los elementos de 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 __ ())

Salida:

x = 104
y = 120

En este ejemplo, tenemos una tupla xy una lista y que contiene el mismo número de elementos, pero el tamaño de la tupla es menor que el de la lista.

Diversos casos de uso

Inicialmente, puede parecer que las listas siempre podrán reemplazar las tuplas, pero este no es el caso. Podemos entender esto debido a las siguientes razones:

  • Cuando se usa una tupla en lugar de una lista, le da al espectador una idea de que los datos presentes pueden y no deben cambiarse.
  • Las tuplas se usan con frecuencia para almacenar datos como la igualdad de un diccionario sin claves.

Ejemplo:

(('Empleado1', 1000), ('Empleado2', 1001), ('Empleado3', 1002))

Las tuplas también se pueden usar como claves en los diccionarios debido a su naturaleza hashtable e inmutable. Las listas no son apropiadas para esto ya que no pueden manejar la función __hash __ () y son de naturaleza mutable.

valor_clave = (('a', 'b'): 1) # Válido
key_value = (('a', 'b'): 1) # Inválido

  • La legibilidad aumenta, es decir, la lectura de información es más fácil cuando las tuplas se almacenan en una lista, a diferencia de cuando las listas se almacenan en una lista. Ejemplo:
((2, 4), (5, 7), (3, 8), (5, 9)) es más fácil de leer que ((2, 4), (5, 7), (3, 8), ( 5, 9))

Uso de tuplas y listas

Usamos una tupla cuando sabemos qué información se debe dar y necesitamos guardar los valores para que no se modifiquen, como cuando necesitamos almacenar credenciales para un sitio web. Las tuplas también se usan como claves para un diccionario porque solo los valores inmutables se pueden cifrar. Por lo tanto, no podemos usar una lista en tales casos. Si aún queremos usar una lista como clave, primero debemos convertir la lista en una tupla.

Y por otro lado, podemos usar una lista, cuando queremos modificar los valores dados dentro de la colección, y también cuando no sabemos si el tamaño de nuestra colección es fijo.

Tabla comparativa de Tuplas de Python vs Listas

A continuación se muestra la comparación más alta entre las tuplas de Python y las listas

Caracteristicas Liza

Tuplas

SintaxisLas listas se definen entre corchetes ().Las tuplas se definen entre paréntesis () o sin paréntesis.
Mutable vs inmutableLa lista es de naturaleza mutable, es decir, puede modificarse o modificarse después de su creación.Una tupla es inmutable por naturaleza, es decir, no puede ser alterada o cambiada después de su creación.

Operaciones DisponiblesLas funciones incorporadas en la lista son más comparadas con las de tupla, por ejemplo, pop (), insert (), etc.Tuple tiene menos funciones integradas.
Comparación de tamañoLas operaciones de lista son de mayor tamaño en comparación con las operaciones de tupla.Las operaciones de tupla son más pequeñas, lo que lo hace más rápido con muchos elementos.

LongitudLas listas tienen una longitud variable.

Las tuplas tienen longitudes fijas. No podemos cambiar el tamaño de una tupla existente.
DuplicidadLas listas se pueden copiarLas tuplas no se pueden copiar.

Conclusión

Esto se trata de Python Tuples vs Lists. Entonces, ahora que hemos entendido las diferencias entre las tuplas y las listas de Python, nos será más fácil decidir cuál de las dos debe usarse y dónde. Por lo tanto, podemos concluir que aunque las listas y las tuplas son estructuras de datos importantes en Python, existen diferencias notables entre ellas, con la diferencia principal de que las listas son mutables, mientras que las tuplas no lo son.

Artículo recomendado

Esta ha sido una guía de la diferencia entre python Tuple vs List. Aquí también discutimos las diferencias clave de Python Tuple vs List con infografías y tabla de comparación. También puede consultar los siguientes artículos para obtener más información.

  1. Agile vs Waterfall: principales diferencias
  2. Digital Ocean vs AWS
  3. Prueba de humo vs Prueba de cordura
  4. Cómo instalar Python
  5. Tipos de compiladores de Python
  6. Diferentes operaciones relacionadas con tuplas
  7. Comprensión de la lista de Python
  8. ¿Qué son las pruebas de cordura y cómo funcionan?