A Função Map
Parte da seção Logic & Flow do Journey de Python da Coddy — lição 72 de 78.
A função map() recebe duas coisas principais:
- Uma função (que contém instruções sobre o que fazer)
- Uma sequência de itens (como uma lista, ou qualquer coleção de elementos)
Ele então aplica essa função a cada item em sua sequência, um por um, e retorna todos os resultados para você.
Por exemplo:
def square(n):
return n * n
numbers = [1, 2, 3, 4, 5] # Esta é apenas uma lista de números
squared_numbers = map(square, numbers)
print(list(squared_numbers))
# Saída: [1, 4, 9, 16, 25]O que aconteceu aqui:
- Temos uma lista de números: [1, 2, 3, 4, 5]
- A função
map()pega cada número, um de cada vez - Ela passa cada número pela nossa função
square - Ela coleta todos os resultados em ordem
Você pode pensar nisso como uma linha de montagem:
- O número 1 entra → a função square o transforma em 1
- O número 2 entra → a função square o transforma em 4
- O número 3 entra → a função square o transforma em 9 E assim por diante...
Você também pode usar uma função lambda em vez de definir uma função separada:
numbers = [1, 2, 3, 4, 5]
squared_numbers = map(lambda n: n * n, numbers)
print(list(squared_numbers))
# Saída: [1, 4, 9, 16, 25]A função map() funciona com qualquer coleção de itens - não apenas números. Podem ser strings, ou qualquer outro tipo de dado que você queira processar da mesma forma.
Desafio
FácilCrie uma função chamada convert_to_uppercase que recebe uma lista de strings strings como argumento. A função deve usar a função map() junto com uma função lambda para converter cada string na lista para maiúsculas. A função deve retornar uma lista contendo as strings em maiúsculas.
Folha de consulta
A função map() aplica uma função a cada item em uma sequência e retorna os resultados:
def square(n):
return n * n
numbers = [1, 2, 3, 4, 5]
squared_numbers = map(square, numbers)
print(list(squared_numbers))
# Saída: [1, 4, 9, 16, 25]Você também pode usar funções lambda com map():
numbers = [1, 2, 3, 4, 5]
squared_numbers = map(lambda n: n * n, numbers)
print(list(squared_numbers))
# Saída: [1, 4, 9, 16, 25]A função map() funciona com qualquer tipo de dado, não apenas números.
Experimente você mesmo
def convert_to_uppercase(strings):
# Use map() com uma função lambda para converter strings para maiúsculas
uppercase_strings =
# Retorna a lista de strings em maiúsculas
return list(uppercase_strings)Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Logic & Flow
1Exploração de Variáveis
ConstantesAtribuição de Múltiplas VariáveisTroca de VariáveisVariáveis de Espaço ReservadoArredondar NúmerosCasting de Listas4Aplicativo de Agenda de Contatos
Exibir MenuAdicionar Contato7Conjuntos Parte 2
Operações Matemáticas Parte 1Operações Matemáticas Parte 2Revisão - Caça ao TesouroSubconjuntos e SuperconjuntosIterando sobre ConjuntosRevisão - Rastreador de Torneio10List Comprehensions Básicas
A SintaxeCriando Listas SimplesAdicionando CondiçõesUsando Agregação de DadosRecapitulação - House Of ListsRecapitulação - Elements Of Freedom13Sistema de Gerenciamento de Inventário
Visão Geral do ProjetoAdicionar Item2Dicionários Parte 1
O que é um Dicionário?Criando um DicionárioAcessando ValoresModificando DicionáriosRecapitulação - Gerenciador de Receitas5Tomada de Decisão Avançada
Operador TernárioVerificações de PertencimentoVerificações de IdentidadeErros de IndentaçãoRecapitulação - Filtro de Férias8Gerenciador de Registros de Alunos
Visão Geral do ProjetoAdicionar Aluno11Funções Avançadas
Retornando Múltiplos ValoresFunções Lambda Parte 1Funções Lambda Parte 2Desafio de Recapitulação - Lambda SortFunções Recursivas Parte 1Funções Recursivas Parte 2Recapitulação - Somar Listas Aninhadas14Funções de Ordem Superior
A Função MapA Função FilterRecapitulação - Validador de E-mailRecapitulação - Processador de Números3Dicionários Parte 2
Métodos de DicionárioDicionários AninhadosVerificando ChavesIterando em DicionáriosRecapitulação - Contador de Frequência6Conjuntos Parte 1
O que é um Conjunto?Operações BásicasMétodos de ConjuntosRecapitulação - Remover Duplicatas9Agregação de Dados Avançada
Usando SumEncontrando Mínimo e MáximoOrdenando Dados de Forma EficienteRecapitulação - Dictionary Sorter