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.
Escreva um comentário