wiki:WikiStart

Programming in Python (for quantitative biologists)

Learning objectives and expected learning outcomes

The course introduces students to imperative programming by referring to the Python language.

The course is divided in two parts:

  1. Python and its object-oriented features;
  2. Python libraries that can be useful in scientific computation and data analysis, in particular NumPy and pandas.

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.

A.A. 2024/25

The course will take place in the first semester. Currently, we expect to lecture on-premises, lectures will NOT be streamed. You can find some videos from last year course in the 2020/21 web page linked below.

Official Timetable

The course will have a total of 40 hours of lessons and 16 hours of lab practice. The exact schedule will be announced during the lessons (the first lesson is on October 1st). Since a.a. 2024/25, attendance is mandatory for QB students. To be admitted to the final examination a QB student must have attended ≥ 10 lectures and ≥ 6 labs. Doing a (github) homework within a week, counts as ⅓ of a lecture.

Syllabus

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

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" (The electronic version is free for Unimi students). NumPy and pandas have excellent online documentation.

The examination is based on laboratory exercises. A final mark (on a 30 point scale) is given, by taking into account the knowledge of the subject and tools, and the clarity of the solutions.

Schedule

1. October 1, 10:30 309

2. October 3, 8:30 B6

3. October 8, 10:30 309

4. October 10, 8:30 B6

5. October 15, 10:30 309

6. October 17, 8:30 B6

7. October 22, 10:30 309

8. October 24, 8:30 B6

9. October 25, 8:30 Delta (LAB)

10. October 29, 10:30 309

11. October 31, 8:30 B6

12. November 5, 10:30 309 (LAB)

13. November 7, 8:30 B6

14. November 12, 10:30 309

15. November 15, 8:30 Delta (LAB)

16. November 19, 10:30 309

17. November 21, 8:30 B6

18. November 22, 8:30 Delta (LAB)

19. November 26, 10:30 309

20. November 28, 8:30 B6

21. November 29, 8:30 Delta (LAB)

22. December 3, 10:30 309

23. December 6, 8:30 Delta (LAB)

24. December 10, 10:30 309

25. December 12, 8:30 B6

26. December 13, 8:30 Delta (LAB)

27. December 17, 10:30 309

28. December 20, 8:30 Delta (LAB)

Previous years

Last modified 18 hours ago Last modified on Nov 12, 2024, 1:42:17 PM
Note: See TracWiki for help on using the wiki.