skip to primary navigationskip to content

An introduction to solving biological problems with Python

Python Logo


This course provides a practical introduction to Python programming language for the complete novice.

Participants are lead through the core aspects of Python illustrated by a series of example programs. Upon completion of the course, attentive participants will be able to write simple Python programs from scratch and to customize more complex code to fit their needs.

Please note that the content of this course has recently been updated. This course now mostly focuses on core concepts including Python syntax, data structures and reading/writing files. Functions and modules are now the focus of a new 1-day course, Working with Python: functions and modules.



Anne Pajon, CRUK

Cristian Riccio, University of Cambridge

Fabio Puddu, University of Cambridge

Gulliermo Parada, Sanger Institute

Mukarram Hossain, University of Cambridge

Niall Murphy, University of Cambridge

Sergio Martinez Cuesta, CRUK

Stephanie Owen, CRUK


Audience and Prerequisites

  • The course is suitable for complete beginners and assumes no prior programming experience (beyond the ability to use a text editor).
  • A very basic knowledge of UNIX would be an advantage, but nothing will be assumed and extremely little will be required.
  • Graduate students, Postdocs and Staff members from the University of Cambridge, Affiliated Institutions and other external Institutions or individuals.


Syllabus, Tools and Resources

During this course you will learn about:

  • Core concepts about Python syntax: Data types, blocks and indentation, variable scoping, iteration, functions, methods and arguments
  • Different ways to control program flow using loops and conditional tests
  • Writing functions and best-practice ways of making them usable
  • Reading from and writing to files
  • Code packaging and Python libraries
  • How to work with biological data using BioPython


Learning Objectives

After this course you should be able to:

  • Edit and run Python code
  • Write file-processing python programs that produce output to the terminal and/or external files  
  • Create stand-alone python programs to process biological data
  • Know how to develop your skills in Python after the course



Book Here

Course materials


Filed under: