«Programmare insegna a pensare»
– Steve Jobs
Alberto Clerici, Maurizio De Pra, M. Chiara Debernardi, Davide Tosi
Indice
1 Introduzione alla programmazione
1.1 Logiche comuni, linguaggi diversi
1.2 Computer e memorizzazione dei dati
1.3 Come funziona un programma
1.4 Evoluzione dei linguaggi
1.5 Il ciclo di sviluppo di un programma
1.6 Algoritmi e diagrammi di flusso
1.7 Perché Python?
2 Introduzione a Python
2.1 Che cos’è Python
2.2 Come si installa Python
2.3 IDLE: editor e shell
2.4 Scrivere un programma, salvarlo ed eseguirlo
2.5 Prime nozioni sulla sintassi di Python
2.6 Commenti e stringa di documentazione
2.7 Codici di escape
2.8 Funzioni built-in
2.9 Help e altri tipi di supporti
3 Calcoli e output dei dati
3.1 Operatori matematici e calcoli
3.2 Parentesi e precedenza degli operatori
3.3 Formule matematiche
3.4 Output dei dati
3.5 Funzioni per i calcoli
4 Variabili e tipi di dati
4.1 Variabili e istruzioni di assegnazione
4.2 Nomenclatura delle variabili
4.3 Riassegnazione
4.4 Tipi di dati
4.5 Espressioni con tipi di dati misti
4.6 Funzioni di conversione tra tipi
4.7 La funzione input 68 5 Strutture decisionali e logica booleana
5.1 L’istruzione if
5.2 Espressioni booleane e operatori relazionali
5.3 L’istruzione if-else
5.4 L’istruzione if-elif-else
5.5 Gli operatori logici and, or, not
5.6 L’istruzione pass
6 Costrutti iterativi
6.1 Introduzione ai cicli
6.2 Il ciclo while
6.3 Il ciclo for
6.4 La funzione range
6.5 Cicli nidificati
6.6 Le istruzioni break e continue
7 Funzioni
7.1 Introduzione alle funzioni
7.2 Definire e chiamare una funzione
7.3 Argomenti delle funzioni
7.4 Funzioni produttive
7.5 Variabili locali e variabili globali
7.6 Stringa di documentazione
7.7 Funzioni con cicli e costrutti condizionali
8 Stringhe e liste
8.1 Sequenze
8.2 Stringhe
8.3 Operazioni sulle stringhe
8.4 Liste
8.5 Operazioni sulle liste
8.6 Indicizzazione
8.7 Slicing
8.8 Funzioni e metodi delle stringhe 138
8.9 Funzioni delle liste
8.10 Metodi delle liste
8.11 Attraversamento di stringhe e liste
8.12 Liste bidimensionali (liste di liste)
9 Tuple e dizionari
9.1 Tuple
9.2 Operatori, funzioni e metodi delle tuple
9.3 Attraversamento di tuple
9.4 Dizionari
9.5 Operatori, funzioni e metodi dei dizionari
10 Accesso ai file e gestione degli errori
10.1 Accedere ai file
10.2 Leggere dati da un file
10.3 Scrivere dati in un file
10.4 Gestione degli errori in Python
10.5 Le istruzioni try… except
10.6 Debugging
11 Le librerie di Python
11.1 Definizione di modulo
11.2 La libreria standard di Python
11.3 Costruire i propri moduli
11.4 Librerie di terze parti
11.5 Espandere le potenzialità di Python
12 Classi, attributi e metodi
12.1 Programmazione a oggetti
12.2 Gli oggetti: classi e istanze
12.3 Lavorare con le classi personalizzate
12.4 Ereditarietà
Ringraziamenti
Bibliografia essenziale