Menu
Coddy logo textTech

Mappatura

Lezione 2 di 9 del corso List comprehension in Python di Coddy.

Supponiamo che ti venga data una lista di numeri e che tu voglia calcolare una stringa che contenga i cubi di tutti i numeri,

nums = [1, 4, 6, 12, 3]
cubes = []
for n in nums:
	cubes.append(n ** 3)

print(cubes)  # [1 , 16, 36, 144, 9]

Usando la comprehension di lista, è possibile farlo in una sola riga,

nums = [1, 4, 6, 12, 3]
cubes = [n ** 3 for n in nums]

print(cubes)  # [1 , 16, 36, 144, 9]

Questo tipo di operazione si chiama mapping: applicare una funzione a ciascun elemento di una lista esistente e generare una nuova lista contenente i risultati.

Ecco la sintassi,

lst = [expression for item in iterable]

lst conterrà una nuova lista ottenuta dall'operazione di comprehension di lista.

challenge icon

Sfida

Facile

Data una lista di numeri nums, supponendo che ogni elemento sia x, calcola una nuova lista in cui ogni elemento viene calcolato con la seguente equazione: <strong>x<sup>3</sup>+2*x<sup>2</sup>+5</strong>

Memorizza la nuova lista in una variabile chiamata new_nums.

Provalo tu

nums = eval(input())  # Non modificare questa riga

Tutte le lezioni di List comprehension in Python

Esercitati da solo: Compilatore Python online