Linguaggio Python - Liv. intermedio/avanzato
Il corso è rivolto a coloro che conoscono già un linguaggio di programmazione e vogliono imparare a programmare in Python, uno dei linguaggi di programmazione più popolari per facilità e versatilità, nonché per il grande numero di librerie. Durante il corso verranno anche illustrati i fondamenti della programmazione orientata agli oggetti e funzionale, insieme a un'introduzione alle librerie Numpy, Pandas e Matplotlib.
Alla fine del corso, i partecipanti avranno acquisito le competenze necessarie per realizzare robusti programmi Python con solide basi sulla programmazione orientata a oggetti e funzionale e anche sull’utilizzo delle principali librerie per il calcolo scientifico, l'analisi dei dati e la rappresentazione visuale di dati.
Il linguaggio Python
Introduzione
L'interprete Python e l’ambiente interattivo iPython
Creazione e gestione di ambienti virtuali
Tipi, variabili, scope delle variabili, operatori
Array
Strutture di controllo: selezione e cicli
Collection: liste, tuple, dizionari, set
Funzioni
Gestione degli errori e delle eccezioni
Moduli, package e gestione delle dipendenze
Input/Output
Iteratori e generatori
Programmazione funzionale
Introduzione alla programmazione funzionale
Funzioni pure e funzioni di ordine superiore
Funzioni lambda
Composizione di funzioni
Esempi di utilizzo delle espressioni lambda e di altre funzioni map(), filter(), reduce(), ...
Programmazione orientata a oggetti in Python
Concetti e princìpi fondamentali Object-Oriented
Creazione di classi e istanze
Costruttori
Attributi e metodi di classe e d'istanza
Proprietà delle classi
Ereditarietà
Ridefinizione di metodi
Polimorfismo
Novità di Python 3.13
Librerie Python
NumPy
Pandas
Matplotlib
Labs
Esercitazioni pratiche sui costrutti e le librerie standard del linguaggio Python
Esercitazioni pratiche sull'utilizzo delle librerie Numpy, Pandas e Matplotlib
Durata
da 35 ore
Obiettivi
Sviluppare le conoscenze sul linguaggio Python e le competenze fondamentali per creare applicazioni Python per elaborazioni numeriche e per la visualizzazione di dati
Prerequisiti
Sono preferibili conoscenze di base sugli algoritmi e sulla programmazione