Introduzione al linguaggio Python
Il corso illustra i fondamenti del linguaggio Python, indispensabile per affrontare temi con il Network Automation.
Esso include una panoramica dei vari strumenti disponibili per la scrittura e l’esecuzione di Python e consente ai partecipanti di programmare rapidamente. Fornisce inoltre esercizi pratici di codifica utilizzando strutture dati di uso comune, scrittura di funzioni personalizzate e lettura e scrittura su file.
Data del corso:
03-04 ottobre 2024
(Il corso si svolgerà interamente on-line)
Agenda
Introduzione
- Filosofia Python
- Caratteristiche principali
- Usi del Python
- Quando non usare Python
- Struttura
- Variabili
- Tipizzazione
- Indentazione
- Esempi
- Operazioni base
- Operazioni su stringhe
- Formattazione
- Operatori
- Sottostringhe
- Struttura dati
- Liste Tuple
- Dizionari
Flussi di controllo
- if, for, loops…
- Condizioni
Funzioni
- Argomenti di default
- Forma lambda
- Metodi sulle liste
Esercitazione sulla programmazione base
Enumeratori statici e dinamici
Programmazione funzionale
- Map, reduce
Cenni su functools
Condizioni su oggetti complessi
- Confronto di sequenze
Files ed IO
Scopo delle variabili
Eccezioni
- gestione delle eccezioni
Esercitazione sulla programmazione funzionale
Classi
- Definizioni
- Namespaces
- Istanze
- Metodi
- Inheritance
- Classi vuote
- Variabili private
- Esercitazione sulle Classi
Moduli
- Moduli standard
- Lista dei moduli
- Uso dei moduli
- Esempio il modulo sistema
Compilare Python
Generator ed Iterators
Interfacce verso il C
Esercitazione finale
Obiettivi
Al termine del corso i partecipanti avranno appreso:
- Basi teoriche del linguaggio di programmazione Python (Strutture dati, funzioni, classi, ecc.)
- Conoscenze di base sui paradigmi di programmazione Funzionale ed Object Oriented in Python
- Come realizzare semplici programmi in Python
- Cenni su aspetti avanzati offerti dal linguaggio.
Destinatari
Sviluppatori, Data Scientist, IT/Network Automation Engineer.
Prerequisiti
Per la partecipazione a questo corso è necessaria una conoscenza base delle logiche di programmazione, cenni basilari su paradigmi di programmazione orientato agli oggetti e possibilmente una conoscenza base di almeno un linguaggio di programmazione.