¿Cómo reemplazar valores en una lista en Python?
En este artículo, veremos cómo reemplazar el valor en una Lista usando Python. Podemos reemplazar valores en la lista de manera serval. A continuación se muestran los métodos para reemplazar valores en la lista.
- Usando la indexación de listas
- Usando bucle for
- Usando el bucle while
- Usando la función lambda
- Usando la división de listas
Método 1: utilizar la indexación de listas
Podemos acceder a elementos de la lista mediante indexación. Este es el método más simple y sencillo para reemplazar valores en una lista en Python. Si queremos reemplazar el primer elemento de la lista, podemos usar el índice 0. A continuación, el índice es un índice del elemento que queremos reemplazar y el nuevo valor es un valor que debería reemplazar el valor anterior en la lista.
Sintaxis: l[índice]=nuevo_valor
Código:
Python3
# Replace Values in a List using indexing> # define list> l> => [> 'Hardik'> ,> 'Rohit'> ,> 'Rahul'> ,> 'Virat'> ,> 'Pant'> ]> # replace first value> l[> 0> ]> => 'Shardul'> # print list> print> (l)> |
Producción:
['Shardul', 'Rohit', 'Rahul', 'Virat', 'Pant']
Método 2: usar En bucle
Podemos usar el bucle for para iterar sobre la lista y reemplazar valores en la lista. Supongamos que queremos reemplazar 'Hardik' y 'Pant' de la lista con 'Shardul' e 'Ishan'. Primero encontramos valores en la lista usando el bucle for y la condición if y luego los reemplazamos con el nuevo valor.
Python3
# Replace Values in a List using For Loop> # define list> l> => [> 'Hardik'> ,> 'Rohit'> ,> 'Rahul'> ,> 'Virat'> ,> 'Pant'> ]> for> i> in> range> (> len> (l)):> > # replace hardik with shardul> > if> l[i]> => => 'Hardik'> :> > l[i]> => 'Shardul'> > # replace pant with ishan> > if> l[i]> => => 'Pant'> :> > l[i]> => 'Ishan'> # print list> print> (l)> |
Producción:
['Shardul', 'Rohit', 'Rahul', 'Virat', 'Ishan']
Método 3: uso Mientras bucle
También podemos usar un bucle while para reemplazar valores en la lista. El bucle while hace el mismo trabajo que el bucle for. Primero en el bucle while, definimos una variable con valor 0 e iteramos sobre la lista. Si el valor coincide con el valor que queremos reemplazar, lo reemplazamos con el nuevo valor.
Python3
# Replace Values in a List using While Loop> # define list> l> => [> 'Hardik'> ,> 'Rohit'> ,> 'Rahul'> ,> 'Virat'> ,> 'Pant'> ]> i> => 0> while> i <> len> (l):> > # replace hardik with shardul> > if> l[i]> => => 'Hardik'> :> > l[i]> => 'Shardul'> > # replace pant with ishan> > if> l[i]> => => 'Pant'> :> > l[i]> => 'Ishan'> > i> +> => 1> # print list> print> (l)> |
Producción:
['Shardul', 'Rohit', 'Rahul', 'Virat', 'Ishan']
Método 4: uso Función lambda
En este método, utilizamos la función lambda y map para reemplazar el valor en la lista. map() es una función incorporada en Python para iterar sobre una lista sin utilizar ninguna declaración de bucle. Una lambda es una función anónima en Python que contiene una expresión de una sola línea. Aquí dimos una expresión como condición para reemplazar el valor. Aquí reemplazamos 'Pant' con 'Ishan' en la función lambda. Luego, usando la función list() convertimos el objeto del mapa en la lista.
Sintaxis: l=lista(mapa(lambda x: x.replace('valor_antiguo','valor_nuevo'),l))
Python3
# Replace Values in a List using Lambda Function> # define list> l> => [> 'Hardik'> ,> 'Rohit'> ,> 'Rahul'> ,> 'Virat'> ,> 'Pant'> ]> # replace Pant with Ishan> l> => list> (> map> (> lambda> x: x.replace(> 'Pant'> ,> 'Ishan'> ), l))> # print list> print> (l)> |
Producción:
['Hardik', 'Rohit', 'Rahul', 'Virat', 'Ishan']
Método 5: uso Lista de corte
Python nos permite realizar cortes dentro de una lista. Cortar nos permite acceder a algunas partes de la lista. Podemos reemplazar valores dentro de la lista usando cortes. Primero, encontramos el índice de la variable que queremos reemplazar y lo almacenamos en la variable 'i'. Luego, reemplazamos ese elemento con un nuevo valor usando la división de listas. Supongamos que queremos reemplazar 'Rahul' con 'Shikhar', primero encontramos el índice de 'Rahul' y luego cortamos la lista y eliminamos 'Rahul' y agregamos 'Shikhar' en ese lugar.
Sintaxis: l=l[:índice]+['nuevo_valor']+l[índice+1:]
Python3
# Replace Values in a List using Slicing> # define list> l> => [> 'Hardik'> ,> 'Rohit'> ,> 'Rahul'> ,> 'Virat'> ,> 'Pant'> ]> # find the index of Rahul> i> => l.index(> 'Rahul'> )> # replace Rahul with Shikhar> l> => l[:i]> +> [> 'Shikhar'> ]> +> l[i> +> 1> :]> # print list> print> (l)> |
Producción:
['Hardik', 'Rohit', 'Shikhar', 'Virat', 'Pant']
Método 6: uso functools.reducir método:
Algoritmo:
- Importar método de reducción desde functools.
- inicializar la lista de prueba.
- Utilice el método de reducción en la lista de prueba que busca el elemento en la lista y lo reemplaza con un nuevo valor.
- Imprimir nueva lista.
Pitón
# Replace Values in a List using reduce> from> functools> import> reduce> # define list> l> => [> 'Hardik'> ,> 'Rohit'> ,> 'Rahul'> ,> 'Virat'> ,> 'Pant'> ]> # replace Rahul with Shikhar> l> => reduce> (> lambda> a, b : a> +> [> 'Shikhar'> ]> if> b> => => 'Rahul'> else> a> +> [b], l , [])> # print list> print> (l)> |
Producción
['Hardik', 'Rohit', 'Shikhar', 'Virat', 'Pant']
Complejidad del tiempo: O(N), donde n es la longitud de la Lista de entrada.
Espacio auxiliar: O(k), donde k es la longitud de la nueva lista con el nuevo valor.