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 SciPy.