Map
O Python é uma linguagem rica em funcionalidades que facilitam a manipulação e transformação de dados. Entre essas funcionalidades, o map() se destaca como uma ferramenta poderosa para aplicar uma função a todos os itens em uma ou mais listas. Neste tutorial, exploraremos o map() em detalhes, entenderemos seu funcionamento e aprenderemos como usá-lo para simplificar a transformação de dados em Python.
1. O que é o map() em Python?
O map() é uma função embutida em Python que aplica uma função a todos os itens em um input (como uma lista) e retorna um objeto map, que é um iterador que produz os resultados conforme você itera sobre ele.
A sintaxe básica é:
map(funcao, iteravel)
funcao: A função que será aplicada a cada item do iterável.iteravel: O iterável (como uma lista) que contém os dados a serem transformados.
2. Usando map() com Funções:
Exemplo 1: Dobrando os Números:
def dobrar(numero):
return numero * 2
numeros = [1, 2, 3, 4, 5]
dobrados = map(dobrar, numeros)
resultado = list(dobrados)
print(resultado) # Saída: [2, 4, 6, 8, 10]
Neste exemplo, a função dobrar() é aplicada a cada número na lista numeros.
Exemplo 2: Convertendo Strings para Maiúsculas:
nomes = ["alice", "bob", "carol"]
maiusculas = map(str.upper, nomes)
resultado = list(maiusculas)
print(resultado) # Saída: ['ALICE', 'BOB', 'CAROL']
Neste exemplo, a função str.upper() é aplicada a cada string na lista nomes.
3. Usando map() com Expressões Lambda:
Expressões lambda são convenientes quando você precisa de uma função simples para uma operação específica.
Exemplo 3: Calculando Quadrados com Expressão Lambda:
numeros = [1, 2, 3, 4, 5]
quadrados = map(lambda x: x ** 2, numeros)
resultado = list(quadrados)
print(resultado) # Saída: [1, 4, 9, 16, 25]
Neste exemplo, uma expressão lambda é usada para calcular os quadrados dos números na lista numeros.
O map() é uma ferramenta poderosa para transformar dados em Python. Ele permite que você aplique uma função a todos os itens em um iterável, economizando o trabalho manual de escrever loops. Ao usar o map(), seu código pode se tornar mais legível, conciso e eficiente.
