Principles of Computer Science - 2019/2020

This course is part of the Bioinformatics program at Sapienza University of Rome. The topics covered in this course include: introduction to programming, Python 2.7, its standard library, and its use in the analysis of data.


Prof. Flavio Chierichetti


  • Tuesday 11:00-14:00 (Psicologia A, CU026)
  • Thursday 9:00-11:00 (Psicologia A, CU026)

Useful Links

  • Please subscribe to our mailing list (using your institutional email address to receive the lecture notes, to ask questions, to read answers, and to get news about the course.
  • Download Canopy 2.1.9, a software package containing Python 2.7 and a number of its libraries.



Two homeworks will be given during the course - these homeworks will consist of several program-writing exercises.

If a student gets a final homework score greater than or equal 15, he or she can decide to only do the oral exam in January or February.

If a student does not get a final homework score greater than or equal 15, or if a student does not pass the oral exam in January or February, he or she will have to do both a written and an oral exam. Please also note that - while any student can choose to do the written exam - if a student decides to do the written exam, he or she loses whichever homework score he or she obtained.


The grades of the first homework have been published.

Ethical Code

Copying is forbidden, and each student has to write the homework solutions by himself or herself, and must not show the solutions to other students. On the other hand, students are encouraged to discuss approaches for solving the exercises.

The teacher will analyze all the submitted solutions, and will strongly penalize plagiarism.


  • October 8th: Computers and Programming (1)
  • October 10th: Computers and Programming (2)
  • October 15th: Iterations (1)
  • October 17th: Iterations (2)
  • October 22nd: If, Then (1)
  • October 24th: If, Then (2)
  • October 28th (09:00-11:00): Objects and Methods (1)
  • October 29th: Objects and Methods (2)
  • October 30th (09:00-12:00): Text and Strings (1)
  • October 31st (11:00-13:00): Text and Strings (2)
  • November 5th: Files (1)
  • November 7th: Files (2)