tutz

¿Cómo copiar o clonar una lista en Python?

Cuando estamos iniciando en Python nos nacen muchas dudas o inquietudes por la falta de experiencia, una de las mas comunes es la pregunta ¿como copio o clono una lista que tengo sin modificar la anterior?.

¡Vamos a resolver esta duda!

Alternativas para copiar o clonar una lista

copy()

Puedes usar el método incorporado list.copy() disponible desde Python 3.3.

nueva_lista = vieja_lista.copy()

Slice

Otra forma es usando slice sobre la vieja lista.

nueva_lista = vieja_lista[:]

Aunque esta forma funciona, no suele ser muy clara a la leer el código. Según Alex Martelli's es recomendable usar la siguiente opción.

list()

También podemos usar otra función que nos trae Python, list()

nueva_lista = list(vieja_lista)

Modulo copy

El modulo copy nos permite usar su método del mismo nombre copy.copy()

import copy
nueva_lista = copy.copy(vieja_lista)

copy.deepcopy()

Si la lista tiene objetos que quieres copiar completamente entonces puedes hacer uso del método deepcopy() del modulo copy.

import copy
nueva_lista = copy.deepcopy(vieja_lista)

Espero que con esto puedas aprender algo nuevo y puedas copiar o clonar las listas que desees en Python.