Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial programming >> python

Função Python map() com EXEMPLOS


Python map() aplica uma função em todos os itens de um iterador dados como entrada. Um iterador, por exemplo, pode ser uma lista, uma tupla, um conjunto, um dicionário, uma string e retorna um objeto de mapa iterável. Python map() é uma função integrada.

Neste tutorial, você aprenderá:

Sintaxe:

map(function, iterator1,iterator2 ...iteratorN)

Parâmetros


Aqui estão duas importantes

Valor de retorno


A função map() vai aplicar a função dada em todos os itens dentro do iterador e retornar um objeto de mapa iterável, ou seja, uma tupla, uma lista, etc.

Como funciona a função map()?


A função map() recebe duas entradas como uma função e um objeto iterável. A função que é fornecida a map() é uma função normal e irá iterar sobre todos os valores presentes no objeto iterável fornecido.

Por exemplo, considere que você tem uma lista de números e deseja encontrar o quadrado de cada um dos números.

Para obter a saída, precisamos da função que retornará o quadrado do número fornecido. A função será a seguinte:
def square(n):
	return n*n

A lista de itens que queremos encontrar no quadrado é a seguinte:
my_list = [2,3,4,5,6,7,8,9]

Agora vamos usar a função interna do python map() para obter o quadrado de cada um dos itens em my_list.

O código final é o seguinte:
def square(n):
    return n*n
my_list = [2,3,4,5,6,7,8,9]
updated_list = map(square, my_list)
print(updated_list)
print(list(updated_list))

Saída:
<map object at 0x0000002C59601748>
[4, 9, 16, 25, 36, 49, 64, 81]

A saída da função map(), conforme visto na saída, é um objeto de mapa exibido na tela como .

Você terá que iterar a saída do mapa usando um loop for ou usando o método list() para obter a saída final. Eu usei list() no código que exibe os valores dentro da lista fornecida.

Então, usando a função map(), podemos obter o quadrado de cada número. A lista dada para map foi [2,3,4,5,6,7,8,9] e usando a função square() a saída de map() que obtivemos é [4, 9, 16, 25, 36, 49, 64, 81] .

A função map() aplica a função square() em todos os itens da lista. Por exemplo, a variável my_list e atualiza a lista com o quadrado de cada número. A saída é armazenada na variável updated_list.

Usando map() com funções internas do Python


A função map() do Python é uma função integrada e também pode ser usada com outras funções integradas disponíveis no Python. No exemplo, vamos usar a função interna do Python round() que arredonda os valores fornecidos.

Exemplo:

A lista que eu tenho é my_list =[2.6743,3.63526,4.2325,5.9687967,6.3265,7.6988,8.232,9.6907] .

Preciso dos valores arredondados para cada item presente na lista. Faremos uso de round() como a função para map().
my_list = [2.6743,3.63526,4.2325,5.9687967,6.3265,7.6988,8.232,9.6907]
updated_list = map(round, my_list)
print(updated_list)
print(list(updated_list))

Saída:
<map object at 0x000000E65F901748>
[3, 4, 4, 6, 6, 8, 8, 10]

A função round() é aplicada a todos os itens da lista e retorna uma lista com todos os valores arredondados conforme mostrado na saída.

Usando map() com uma string como iterador


Também podemos usar map() em uma string. Em Python, uma string age como um array para que possamos usá-la facilmente dentro do map().

No exemplo, temos uma função myMapFunc() que se encarrega de converter a string dada para maiúscula. A função myMapFunc() é dada à função map(). A função map se encarrega de converter a string dada para maiúscula passando a string para myMapFunc().
def myMapFunc(s):
    return s.upper()
my_str = "welcome to guru99 tutorials!"
updated_list = map(myMapFunc, my_str)
print(updated_list)
for i in updated_list:
    print(i, end="")

Resultado:
<map object at 0x000000DF2E711748>
WELCOME TO GURU99 TUTORIALS!

Usando map() com listof Numbers


Para trabalhar com a lista em map() pegará uma lista de números e multiplicará cada número na lista por 10.

A lista que vamos usar é:[2,3,4,5,6,7,8,9]. A função myMapFunc() se encarrega de multiplicar o número dado por 10. A função é dada para mapear junto com a lista.

Exemplo:
def myMapFunc(n):
    return n*10

my_list = [2,3,4,5,6,7,8,9]

updated_list = map(myMapFunc, my_list)
print(updated_list)
print(list(updated_list))

Resultado:
<map object at 0x000000EE2C061898>
[20, 30, 40, 50, 60, 70, 80, 90]

A saída que vemos é que cada número na lista é

multiplicado por 10.

Usando map() com Tupla


Uma tupla é um objeto em Python que possui itens separados por vírgulas e entre colchetes. No exemplo, pegaremos uma tupla com valores de string. A função que usaremos converterá os valores fornecidos para maiúsculas.

Exemplo:
def myMapFunc(n):
    return n.upper()

my_tuple = ('php','java','python','c++','c')

updated_list = map(myMapFunc, my_tuple)
print(updated_list)
print(list(updated_list))

Resultado:
<map object at 0x0000009C3C3A16A0>
['PHP', 'JAVA', 'PYTHON', 'C++', 'C']

A saída que obtemos é uma tupla de volta com todos os valores nela convertidos em maiúsculas.

Usando map() com dicionário


Um dicionário em Python é criado usando chaves ({}). Como o dicionário é um iterador, você pode usá-lo dentro da função map(). Vamos agora usar um dicionário como um iterador dentro da função map().

O exemplo a seguir mostra o funcionamento do iterador de dicionário dentro de map()
def myMapFunc(n):
    return n*10
my_dict = {2,3,4,5,6,7,8,9}
finalitems = map(myMapFunc, my_dict)
print(finalitems)
print(list(finalitems))

Resultado:
<map object at 0x0000007EB451DEF0>
[20, 30, 40, 50, 60, 70, 80, 90]

Usando map() com Set


Set in Python é uma coleção não ordenada de itens entre chaves (()). Como set() também é um iterador, você pode usá-lo dentro da função map().

Aqui está um exemplo funcional do uso de set como um iterador dentro de map()
def myMapFunc(n):
    return n*10
my_set = {2,3,4,5,6,7,8,9}
finalitems = map(myMapFunc, my_set)
print(finalitems)
print(list(finalitems))

Resultado:
<map object at 0x000000AC8F05DEF0>
[20, 30, 40, 50, 60, 70, 80, 90]

Usando map() com função Lambda


Em Python, expressões lambda são utilizadas para construir funções anônimas. Você terá que usar a palavra-chave lambda assim como usa def para definir funções normais.

Então, no exemplo, vamos usar a função lambda dentro do map(). A função lambda multiplicará cada valor na lista por 10.

Exemplo:
my_list = [2,3,4,5,6,7,8,9]
updated_list = map(lambda x: x * 10, my_list)
print(updated_list)
print(list(updated_list))

Resultado:
<map object at 0x000000BD18B11898>
[20, 30, 40, 50, 60, 70, 80, 90]

Usando vários iteradores dentro da função map()

Exemplo 1:Passando dois iteradores de lista para map()


Você pode enviar mais de um iterador, ou seja, uma lista, uma tupla, etc. tudo ao mesmo tempo para a função map().

Por exemplo, se você deseja adicionar duas listas. O mesmo pode ser feito usando a função map(). Vamos usar duas listas minha_lista1 e minha_lista2.

No exemplo abaixo, o primeiro item em my_list1 é adicionado ao primeiro item de my_list2. A função myMapFunc() recebe itens de my_list1 e my_list2 e retorna a soma de ambos.

Aqui está o exemplo de trabalho de adicionar duas listas fornecidas usando a função map().
def myMapFunc(list1, list2):
    return list1+list2

my_list1 = [2,3,4,5,6,7,8,9]
my_list2 = [4,8,12,16,20,24,28]

updated_list = map(myMapFunc, my_list1,my_list2)
print(updated_list)
print(list(updated_list))

Resultado:
<map object at 0x0000004D5F751860>
[6, 11, 16, 21, 26, 31, 36]

Exemplo 2:Passando uma Tupla e um iterador de lista para map()


Vamos usar uma lista e um iterador de tupla na função map(). A função é dada para map – myMapFunc() obterá os itens da lista e da Tupla. Os itens serão unidos com um sublinhado(_). O exemplo de trabalho é como mostrado abaixo:
def myMapFunc(list1, tuple1):
    return list1+"_"+tuple1

my_list = ['a','b', 'b', 'd', 'e']
my_tuple = ('PHP','Java','Python','C++','C')

updated_list = map(myMapFunc, my_list,my_tuple)
print(updated_list)
print(list(updated_list))

Resultado:
<map object at 0x00000059F37BB4E0>
['a_PHP', 'b_Java', 'b_Python', 'd_C++', 'e_C']

Resumo

  • Python map() é uma função interna que aplica uma função em todos os itens de um iterador fornecidos como entrada. Um iterador, por exemplo, pode ser uma lista, uma tupla, uma string, etc. e retorna um objeto de mapa iterável.
  • A função map() aplicará a função fornecida em todos os itens dentro do iterador e retornará um objeto de mapa iterável, ou seja, uma tupla, uma lista etc.
  • A função map() do Python é uma função integrada e também pode ser usada com outras funções integradas disponíveis em Python.
  • Uma tupla é um objeto em Python que tem itens separados por vírgulas e entre colchetes. No exemplo vai pegar uma tupla com valores de string. A função que usaremos converterá os valores fornecidos para maiúsculas.
  • Um dicionário em Python é criado usando chaves ({}). Como o dicionário é um iterador, você pode usá-lo dentro da função map().
  • Set in Python é uma coleção não ordenada de itens entre chaves (()). Como set() também é um iterador, você pode usá-lo dentro da função map().
  • Em Python, expressões lambda (ou formas lambda) são utilizadas para construir funções anônimas. Portanto, a palavra-chave lambda deve ser usada quando você deseja usar lambda dentro do map().
  • Você pode enviar mais de um iterador, ou seja, uma lista, uma tupla para a função map().

python

  1. Função anônima/Lambda do Python
  2. Geradores Python
  3. Fechamentos Python
  4. Decoradores Python
  5. Sobrecarga do operador C++ com exemplos
  6. Funções C++ com exemplos de programas
  7. Instrução Python Print():Como imprimir com exemplos
  8. Função Python String strip () com EXEMPLO
  9. Python String count() com EXEMPLOS
  10. Python String format() Explique com EXEMPLOS