Mapeamento
Lição 2 de 9 do curso List Comprehension no Python da Coddy.
Vamos supor que você receba uma lista de números e queira calcular uma string que contenha os cubos de todos os números,
nums = [1, 4, 6, 12, 3]
cubes = []
for n in nums:
cubes.append(n ** 3)
print(cubes) # [1 , 16, 36, 144, 9]Usando list comprehension (compreensão de lista), isso pode ser feito em uma única linha,
nums = [1, 4, 6, 12, 3]
cubes = [n ** 3 for n in nums]
print(cubes) # [1 , 16, 36, 144, 9]Esse tipo de operação é chamado de mapeamento (mapping) - aplicar uma função a cada elemento de uma lista existente e gerar uma nova lista contendo os resultados.
Aqui está a sintaxe,
lst = [expression for item in iterable]lst conterá uma nova lista resultante da operação de list comprehension.
Desafio
FácilDada uma lista de números nums, assumindo que cada elemento seja x, calcule uma nova lista onde cada elemento é calculado com a seguinte equação: <strong>x<sup>3</sup>+2*x<sup>2</sup>+5</strong>
Armazene a nova lista em uma variável chamada new_nums.
Experimente você mesmo
nums = eval(input()) # Não altere esta linha