Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> python

Dominando la función map() de Python: sintaxis, ejemplos y mejores prácticas

Dominando la función map() de Python: sintaxis, ejemplos y mejores prácticas

La función integrada map() de Python aplica una función a cada elemento de un iterable (lista, tupla, conjunto, cadena, diccionario, etc.) y devuelve un nuevo iterable. Es una piedra angular para la programación de estilo funcional en Python.

Qué aprenderás

Sintaxis

map(funcion, iterable1, iterable2, ... iterableN)

Parámetros

Valor de retorno

El resultado es un objeto map —un iterable perezoso que produce elementos transformados. Conviértelo a lista, tupla o conjunto para consumir los valores.

Cómo funciona map()

Ejemplo simple que eleva al cuadrado cada número de una lista:

def cuadrado(n):
    return n * n

mi_lista = [2, 3, 4, 5, 6, 7, 8, 9]
actualizado = map(cuadrado, mi_lista)
print(list(actualizado))  # [4, 9, 16, 25, 36, 49, 64, 81]

El objeto map es perezoso; convertirlo a lista fuerza la evaluación.

Uso de map() con funciones integradas

Combina map() con cualquier integrada que acepte un solo argumento. Por ejemplo, redondear números flotantes:

valores = [2.6743, 3.63526, 4.2325, 5.9687967, 6.3265, 7.6988, 8.232, 9.6907]
redondeados = map(round, valores)
print(list(redondeados))  # [3, 4, 4, 6, 6, 8, 8, 10]

Map sobre cadenas

Las cadenas son iterables, así que map() puede transformar cada carácter o palabra.

def a_mayusculas(s):
    return s.upper()

texto = "bienvenido a tutoriales guru99!"
print("".join(map(a_mayusculas, texto)))  # BIENVENIDO A TUTORIALES GURU99!

Map sobre listas de números

def por_diez(n):
    return n * 10

nums = [2, 3, 4, 5, 6, 7, 8, 9]
print(list(map(por_diez, nums)))  # [20, 30, 40, 50, 60, 70, 80, 90]

Map sobre tuplas

def a_mayusculas_str(s):
    return s.upper()

lenguajes = ("php", "java", "python", "c++", "c")
print(list(map(a_mayusculas_str, lenguajes)))  # ['PHP', 'JAVA', 'PYTHON', 'C++', 'C']

Map sobre diccionarios y conjuntos

Al iterar sobre un diccionario, map() recibe sus claves. Para un conjunto, el orden es arbitrario.

def por_diez(n):
    return n * 10

conjunto_ejemplo = {2, 3, 4, 5, 6, 7, 8, 9}
print(sorted(map(por_diez, conjunto_ejemplo)))  # [20, 30, 40, 50, 60, 70, 80, 90]

Uso de funciones lambda

Las funciones anónimas mantienen el código conciso:

nums = [2, 3, 4, 5, 6, 7, 8, 9]
print(list(map(lambda x: x * 10, nums)))  # [20, 30, 40, 50, 60, 70, 80, 90]

Múltiples iteradores

Ejemplo 1: Sumar dos listas

def sumar(a, b):
    return a + b

lista1 = [2, 3, 4, 5, 6, 7, 8, 9]
lista2 = [4, 8, 12, 16, 20, 24, 28]
print(list(map(sumar, lista1, lista2)))  # [6, 11, 16, 21, 26, 31, 36]

Ejemplo 2: Concatenar elementos de lista y tupla

def concatenar(a, b):
    return f"{a}_{b}"

letras = ['a', 'b', 'b', 'd', 'e']
marcas = ('PHP', 'Java', 'Python', 'C++', 'C')
print(list(map(concatenar, letras, marcas)))
# ['a_PHP', 'b_Java', 'b_Python', 'd_C++', 'e_C']

Conclusiones clave

python

  1. Sobrecarga de operadores en C++: Guía práctica con ejemplos de código
  2. Funciones en C++ Explicadas con Ejemplos de Código Prácticos
  3. Funciones lambda en Python: Guía práctica de funciones anónimas
  4. Generadores en Python: Iteración Eficiente y Casos de Uso Avanzados
  5. Explicación de Closures en Python: Cómo las Funciones Anidadas Capturan Variables
  6. Dominando Decoradores en Python: Mejora Funciones con Técnicas Expertas
  7. Función print() en Python: Guía Práctica con Ejemplos
  8. Domine el Método strip() de Python: Guía Completa y Ejemplos Prácticos
  9. Domine str.count() en Python: Cómo Contar Caracteres y Subcadenas con Ejemplos
  10. Domine el Formateo de Strings en Python con format(): Ejemplos Claros
  11. Domine el Método String.find() en Python: Sintaxis, Ejemplos y Alternativas