Como usar a função map em Python

Função map em Python

A função map é uma função integrada (interna) em Python que permite aplicar uma determinada função a cada elemento de um iterável (como uma lista, tupla ou conjunto) e retorna um objeto map que contém os resultados.

Por ser uma função built-in da linguagem Python, ela está sempre disponível, e não necessitando ser importada no script. A função map possui algumas vantagens em termos de desempenho, quando comparada por exemplo a um laço for, e pode ser usada de várias formas, desde expressões simples até avançadas.

Trata-se de uma função usada para programação funcional em Python, com um funcionamento geral do tipo filtragem de itens por meio de um teste (operação “filter“) e aplicação de expressões em pares de itens (operação “reduce“).

É muito comum o emprego de expressões lambda em combinação com a função map, pois esta justamente espera uma função como argumento. Veremos exemplos disso a seguir.

Sintaxe básica

map(função, iterável)

Onde “função” é a função que se deseja aplicar a cada elemento do iterável e “iterável” é o objeto que contém os valores a serem processados. A função map aplica a “função” a cada elemento de “iterável” e retorna um objeto map que contém os resultados.

A função passada como argumento para a função map pode ser uma função definida pelo usuário ou uma função lambda. A função lambda é uma função anônima que pode ser usada para uma tarefa específica sem a necessidade de definir uma função separada.

Exemplos de map

Vejamos alguns exemplos de uso da função map:

Exemplo 1: Multiplicar por dois cada valor de uma lista

numeros = [1, 2, 3, 4, 5]
dobro = list(map(lambda x: x*2, numeros))
print(dobro)

Resultado:

[2, 4, 6, 8, 10]

Exemplo 2: Converter uma lista de strings em letras maiúsculas

palavras = ['Python', 'é', 'uma', 'linguagem', 'de', 'programação']
maiúsculas = list(map(str.upper, palavras))
print(maiúsculas)

Resultado:

['PYTHON', 'É', 'UMA', 'LINGUAGEM', 'DE', 'PROGRAMAÇÃO']

Exemplo 3: Usar a função map para somar os valores de duas listas com função

numeros1 = [1, 2, 3, 4]
numeros2 = [5, 6, 7, 8]
soma = list(map(lambda x, y: x + y, numeros1, numeros2))
print(soma)

Resultado

[6, 8, 10, 12]

Neste exemplo, usamos uma função lambda para somar cada par de elementos correspondentes das duas listas de nomes “numeros1” e “numeros2”, e o resultado obtido é passado para a função list(), que gera uma nova lista com os números..

Conclusão

A função map do Python é útil para aplicar uma determinada função a cada elemento de um iterável e retornar os resultados em um objeto map. Ela pode ser usada com funções definidas pelo usuário ou funções lambda para uma tarefa específica sem a necessidade de definir uma função separada.

 

Sobre Fábio dos Reis (1212 Artigos)
Fábio dos Reis trabalha com tecnologias variadas há mais de 30 anos, tendo atuado nos campos de Eletrônica, Telecomunicações, Programação de Computadores e Redes de Dados. É um entusiasta de Ciência e Tecnologia em geral, adora Viagens e Música, e estuda idiomas, além de ministrar cursos e palestras sobre diversas tecnologias em São Paulo e outras cidades do Brasil.

Escreva um comentário

Seu e-mail não será divulgado


*