Programming in python

A.A. 2020/2021
6
Crediti massimi
56
Ore totali
SSD
INF/01
Lingua
Inglese
Obiettivi formativi
The course introduces students to imperative programming by referring to the Python language. The course is divided in two parts: the first presents Python and its object-oriented features, the second focuses on libraries that can be useful in scientific computation and data analysis, in particular NumPy and pandas.
Risultati apprendimento attesi
Students will acquire the ability to write and tune a program that automatizes simple computational tasks; they will be able to understand how a small piece of Python code works, to find the reasons of a malfunction and to correct it appropriately. Moreover, students will be able to use the NumPy and pandas library to analyze tabular data.
Programma e organizzazione didattica

Edizione unica

Responsabile
Periodo
Secondo semestre
Lectures will be mainly streamed via YouTube (with synchronous interaction with the instructors); streamed videos will be available until the conclusion of the course. Some lesson could be registered in asynchronous form. Laboratory exercises will conducted autonomously by the students and special synchronous feedback sessions will be organized.
Programma
The Python programming language. Native data types. Functions, selections and iterations. Basic data structures: lists, tuples, dictionaries. Object-oriented encapsulation. Iterators and generators. Files. Numpy multi-dimensional arrays and matrices. Data manipulation and analysis with pandas.
Prerequisiti
Students are required to be able to solve computational problems in an algorithmic way.
Metodi didattici
The course has lectures, which present the subject and interactively discuss problem solutions and laboratory sessions to experiment with tools. Course attendance is highly recommended.
Materiale di riferimento
Any Python3 book can be used to support the learning of the general part, for example J. Hunt "A Beginners Guide to Python 3 Programming" (https://doi-org.pros.lib.unimi.it:2050/10.1007/978-3-030-20290-3). NumPy (https://numpy.org/) and pandas (https://pandas.pydata.org/) have excellent documentation online.
Modalità di verifica dell’apprendimento e criteri di valutazione
The examination is based on a laboratory exercise. A final mark (on a 30 point scale) is given, by taking into account: knowledge of the subject and tools, and clarity of solutions.
INF/01 - INFORMATICA - CFU: 6
Esercitazioni: 16 ore
Lezioni: 40 ore
Docente: Monga Mattia
Docente/i
Ricevimento:
Su appuntamento
Uff. 5004, Via Celoria 18, Milano