Python programming with applications to bioinformatics, Umeå (NBIS/ELIXIR-SE course)

NBIS/ELIXIR-SE course open for PhD students, postdocs, researchers and other employees in need of fundamental Python skills. Priority will be given national participants affilliated with all Swedish universities. Please visit the Course website:

Important dates

Application closed

Confirmation to accepted students: September 6

Responsible teacher: Nina Norgren

Local contact: Jeanette Tångrot (

If you do not receive information according to the above dates please contact:  Nina Norgren (

Course fee

A course fee* of 2000 SEK will be invoiced to accepted participants. This includes lunches, coffee and snacks, and course dinner

*Please note that NBIS cannot invoice individuals

Course content

This course provides a practical introduction to the writing of Python programs 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.


  • 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
  • Regular expressions and pattern matching
  • 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 external libraries.

Learning objectives

  • 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 (including debugging)


Lectures will be streamed online from our Uppsala site where the other Python course is given in parallel. Several teaching assistants will be present in the Umeå classroom all week to help with exercises and questions. The course consists of a mix of presentations, demonstrations, and practical exercises (either in the lab with assistants or on your own). Prior to the course, you can read a companion book “Programming Python”, or “Learning Python”. Such a book will also prove useful for your programming tasks, after the course is over. It is however not required, and material will be presented in class.

Entry requirements

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, such as navigating through folders and issuing commands at a shell prompt. We will not teach UNIX in detail: Other course are available at SciLifeLab for it. Bring your own laptop with python installed for the practical exercises.

Due to limited space the course can accommodate a maximum of 15 participants. If we receive more applications, participants will be selected based on several criteria. Selection criteria include correct entry requirements, motivation to attend the course as well as gender and geographical balance.