Python Lesson - 6.1 Functional Programming m

Lezioni di Python – 6.1 Programmazione funzionale

La programmazione funzionale è uno stile di programmazione basato esclusivamente sull’uso delle funzioni. Un ruolo importante di questo tipo di programmazione lo giocano le funzioni di ordine più alto (higher-order functions). Questo genere di funzioni prendono altre funzioni come argomenti, o restituiscono funzioni.

Python Lesson - 6.2 Lambda functions m

Lezioni di Python – 6.2 Le funzioni Lambda

In Python, anche le funzioni possono essere utilizzate on the fly, utilizzando una particolare sintassi chiamata lambda. Le funzioni che vengono create in questo modo sono chiamate anonime. Questo approccio si utilizza spesso quando si vuole passare una funzione come argomento di un’altra funzione.

Python lessons - 6.3 Map and Filter m

Lezioni di Python – 6.3 Map e Filter

In Python, esiste una funzione built-in, chiamata map(), che può essere molto utile per le funzioni high-order che operano su liste. Infatti, questa funzione prendete una funzione e un oggetto iterabile (tipo una lista) come argomenti, e restituisce un nuovo oggetto iterabile (tipo una nuova lista)  con la funzione applicata per ciascun argomento

Python Lesson - 6.4 Generators m

Lezioni di Python – 6.4 I Generatori

I generatori sono un tipo di iterabile, come le liste e le tuple. Ma a differenza delle liste, i generatori non permettono l’indicizzazione con indici arbitrari, ma possono comunque essere iterati attraverso i cicli for. Per definire questi generatori si utilizza la clausola yield, in sostituzione di return all’interno di una funzione.

Python Lesson - 6.6 Recursions m

Lezioni di Python – 6.6 La Ricorsione

La ricorsione è un concetto molto importante nella programmazione funzionale. Un aspetto base della ricorsione è l’auto riferimento della funzione che richiama se stessa. Un classico esempio di funzione implementabile ricorsivamente è la funzione fattoriale. Il fattoriale di un numero equivale al prodotto di tutti i numeri da 0 fino a quel numero specificato.

Python Lesson - 6.7 Sets m

Lezioni di Python – 6.7 Set

I set sono strutture dati simili a liste o dizionari. Questi vengono creati usando le parentesi {} o direttamente la funzione set(). Questa struttura dati condivide alcune funzionalità con le liste, per esempio l’uso della clausola in  per sapere se un particolare valore è contenuto all’interno.

Python lessons - 7.1 Classes m

Lezioni di Python – 7.1 Classi

Un altro paradigma di programmazione è la programmazione orientata agli oggetti, object-oriented programming (OOP). Gli oggetti vengono creati utilizzando le classi che sono il fulcro di tutta la programmazione orientata agli oggetti. Una classe definisce un oggetto e si usa la clausola class per indicarli.

Python Lessons - 7.2 Inheritance m

Lezioni di Python – 7.2 Ereditarietà

L’ereditarietà fornisce un modo per condividere delle funzionalità tra classe diverse. Pensiamo a diverse classi di tipo Triangolo, Quadrato, Pentagono. Queste classi differiscono sotto alcuni aspetti ma hanno anche altri aspetti che li accomunano (per esempio il colore, l’area, ecc.). Quindi si potrebbe presumere che esista una superclasse che abbia tutte le caratteristiche che li accomuni tutte.