Conversión de listas y tuplas en Python: list(), tuple()

Negocio

Cuando quieras convertir listas (arrays) y tuplas entre sí en Python, utiliza list() y tuple().

Si se dan como argumentos objetos iterables como tipos de conjuntos, así como listas y tuplas, se devuelven nuevos objetos de tipo lista y tupla.

Las siguientes variables de tipo lista, tupla y rango son ejemplos.

l = [0, 1, 2]
print(l)
print(type(l))
# [0, 1, 2]
# <class 'list'>

t = ('one', 'two', 'three')
print(t)
print(type(t))
# ('one', 'two', 'three')
# <class 'tuple'>

r = range(10)
print(r)
print(type(r))
# range(0, 10)
# <class 'range'>

La función range() devuelve un objeto de tipo range desde Python 3.

Tenga en cuenta que, aunque el término «conversión» se utiliza por conveniencia, el nuevo objeto se crea realmente, y el objeto original permanece intacto.

Generar lista: list()

Cuando se especifica un objeto iterable, como una tupla, como argumento de list(), se genera una lista con ese elemento.

tl = list(t)
print(tl)
print(type(tl))
# ['one', 'two', 'three']
# <class 'list'>

rl = list(r)
print(rl)
print(type(rl))
# [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
# <class 'list'>

Generar tuplas: tuple()

Cuando se especifica un objeto iterable, como una lista, como argumento de tuple(), se genera una tupla con ese elemento.

lt = tuple(l)
print(lt)
print(type(lt))
# (0, 1, 2)
# <class 'tuple'>

rt = tuple(r)
print(rt)
print(type(rt))
# (0, 1, 2, 3, 4, 5, 6, 7, 8, 9)
# <class 'tuple'>

Añadir o modificar elementos de las tuplas

Las tuplas son inmutables (no actualizables), por lo que los elementos no pueden ser cambiados o borrados. Sin embargo, una tupla con elementos cambiados o borrados puede obtenerse utilizando list() para hacer una lista, cambiando o borrando elementos, y luego utilizando de nuevo tuple().