A.1 Strumenti e basi
- Per casa: provare a fare Basi 1: variabili e interiA.2 Strumenti e basi
- Basi2 booleani: Slide | SoftPython
- Basi3 float: Slide | SoftPython
A.3 Stringhe
- Stringhe1 intro: Slide | SoftPython
- Stringhe2 operatori: Slide | SoftPython
- Stringhe3 metodi di base: Slide | SoftPython
- Stringhe4 metodi di ricerca: Slide | SoftPython
A.4 Liste
- Liste1 intro: Slide | SoftPython
- Liste2 operatori: Slide | SoftPython
- Liste3 metodi di base: Slide | SoftPython
- Liste4 metodi di ricerca: Slide | SoftPython
A.5 - Tuple, Insiemi, Dizionari
- Tuple 1: Slide | SoftPython
- Insiemi 1: Slide | SoftPython
- Dizionari 1 intro: Slide | SoftPython
- Dizionari 2 operatori: Slide | SoftPython
- Dizionari 3 metodi: Slide | SoftPython
- Dizionari 4 dizionari speciali (menzione): Slide | SoftPython
A.6 - Controllo di flusso
- if 1: Slide | SoftPython
- cicli for 1: Slide | SoftPython
- cicli for 2,3,4,5,6,7 : Slide
- Esercizi SoftPython: for 2 stringhe for 3 liste for 4 tuple for 5 insiemi for 6 dizionari
- Funzioni 1 intro: slide | SoftPython
- funzioni 2 gestione errori e testing: Slide | SoftPython- esercizi funzioni: Funzioni 3 stringhe Funzioni 4 liste Funzioni 5 tuple Funzioni 6 insiemi Funzioni 7 dizionari
Recupero da modulo 1:
- while 1 intro: Slide | SoftPython
-Recupero Sequenze da Modulo 1 : Slide | SoftPython
- Recupero For annidati da Modulo 1 : Slide | Esercizi SoftPython: for 7 for annidati
Matrici liste di liste:
-1 intro: Slide | SoftPython : recap
- 2 altri esercizi : Slide | SoftPython vediamo qualche esercizio
- Strutture composte : Slide | SoftPython
Formati File:
- 1 file a linee: Slide | SoftPython
- 2 file CSV: Slide | SoftPython
- 3 file JSON e XML: Slide | SoftPython
Numpy:
- 1 intro: Slide | SoftPython (per Nan e infinità bastano le slide, il paragrafo su SoftPython è fin troppo dettagliato )
- 2 esercizi: SoftPython
Visualizzazione:
- 1 intro: Slide | SoftPython
Pandas:
- 1 intro: Slide |SoftPython
- 2 esercizi: Slide |SoftPython (9 agosto) ho spostato gli esercizi rilevanti per l'esame nel foglio 1
Progetti svolti:
- Progetti su SoftPython in italiano (pochi)
- Progetti su SoftPython in inglese (tanti): OPZIONALE a chi interessa può guardare i progetti nelle sezioni Text data e Tabular data (per chi vuole ci sono anche altri progetti sulle reti di relazioni ma per fare quelli prima dovreste leggervi il tutorial Relational data)
Slides built from jupyter notebooks for Python courses, with some quick and dirty integration between:
-
Jupman: jupyter notebook manager (modded 3.5.7 version), allows to strip solutions from notebooks marked with special tags
-
Interactive Coding Playgrounds (ICP) to allow students to run Python code in slides
-
Python Tutor (using the offline version integrated in jupman) for visualizing code runs
The process is the following:
- Set up environment according to jupman Local build with Sphinx setup instructions
- author a jupyter notebook ending in
-sol.ipynb
by using mostly markdown text, sometimes html (for i.e. tables)- mark code you don't want students to see with special jupman tags
- run Python code in Jupyter to produce HTML widgets for ICP and Python tutor, so the result is immediately visible while authoring
- run make_slides.py like
make_slides.py lists/lists1
which:- calls jupman to take original
lists1-sol.ipynb
and generate a newlists1.ipynb
file with stripped solutions - calls
nbconvert
to export to a reveal.js html presentation file (a native functionality of Jupyter) - crudely processes html generated from nbconvert to inject various scripts and css
- calls jupman to take original
- currently my ICP adaptation is buggy
- organizing cells in multicolumn layout still has to be done in html which may be cumbersome, in pandas notebooks there is some example workaround