AN INTRODUCTION TO PROGRAMMING (PYTHON) - 1718

The core of this course is the study of the basic concepts of an high-level programming language. Those concepts are valid not only for Python but also for any high-level programming language.
At the end of the course the student will be able to handle primitive and advanced data types, simple and nested control flows and conditional statements, files, exceptions and memory management.
Moreover, several lectures will be devoted to the concept of object-oriented programming, where the student will learn how to use modules, objects, and classes.
Later, we will focus on some libraries that are particularly useful in the context of data science and big data analysis.
Finally, a survey over the computational complexity topic will be offered.