Aplicar función a cada elemento de una lista – Python

En este artículo, aprenderemos cómo aplicar una función a cada elemento de una lista de Python. Veamos qué significa exactamente Aplicar una función a cada elemento de una lista:

Supongamos que tenemos una lista de enteros y una función que duplica cada entero de esta lista. Al aplicar la función a la lista, la función debe duplicar todos los enteros de la lista. Logramos esta funcionalidad de las siguientes maneras:

  1. método mapa() .
  2. Uso de listas de comprensión.
  3. función lambda

Usando el método map()

Los métodos map() toman dos argumentos: iterables y funciones y devuelven un objeto de mapa. Usamos list() para convertir el objeto del mapa en una lista.

Programa:

Python3

def double(integer):
    return integer*2
  
  
# driver code
integer_list = [1, 2, 3]
  
# Map method returns a map object
# so we cast it into list using list()
output_list = list(map(double, integer_list))
  
print(output_list)

Producción:

[2, 4, 6]

Complejidad de tiempo: O(n)*(O complejidad de la función aplicada en la lista)

Uso de listas de comprensión

Usamos una lista por comprensión para llamar a una función en cada elemento de la lista y luego la duplicamos para este caso.

Programa:

Python3

def double(integer):
    return integer*2
  
  
# driver code
integer_list = [1, 2, 3]
  
# Calling double method on each integer
# in list using list comprehension.
output_list = [double(i) for i in integer_list]
  
print(output_list)

Producción:

[2, 4, 6]

Complejidad de tiempo: O(n)*(O complejidad de la función aplicada en la lista)

Uso de la función Lambda

También se puede emplear una función lambda para producir la funcionalidad anterior. Lambda es capaz de crear una función anónima que se puede hacer lo suficiente para cumplir con el requisito dado.

Programa:

Python3

lst = [1, 2, 3]
  
ans = []
  
for x in lst:
    def res(x): return x*2
    ans.append(res(x))
  
print(ans)

Producción:

[2, 4, 6]

Publicación traducida automáticamente

Artículo escrito por pulamolusaimohan y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *