About this course

Python is a popular general-purpose language with enormous traction both in industry and academia. Scientists love it because it allows rapid prototyping, because the language remains readable, and because of a wealth of available libraries ranging from data processing, machine learning, to parallelization, and visualization of results. This course aims at bringing you up to speed in this language and library developments. This course is for UiT employees and students.

Requirements

  • No previous knowledge in Python required for the first course day
  • Day 2 and 3 require students to have at least basic previous exposure to Python
  • You need a laptop with access to Eduroam
  • You will need Python 3 and a couple of Python packages installed
  • Follow these installation instructions

Teachers

  • Radovan Bast
  • Ole Martin Bjørndalen
  • Dan Jonsson
  • Giacomo Tartari
  • Lars Tiede

Schedule

Basics

April 6, 9:00-13:00

Basics (Giacomo)
Testing and profiling (Radovan)
  • Slides
  • PEP8
  • The Zen of Python
  • Virtualenv
  • Testing
  • Profiling
Exercises (all teachers)

Language features (intermediate)

April 7, 9:00-13:00

Control (Ole Martin)
  • Slides
  • Generators
  • Comprehensions
  • Higher-order functions
  • Decorators
  • Functional programming style (map, filter, reduce, partial)
Data (Lars)
Exercises and homework (all teachers)

Libraries

April 8, 9:00-12:00

Organizing code (Ole Martin)
  • Slides
  • Making programs readable
  • Functions, modules and packages
  • Fitting parts together
  • Naming things
Ole Martin
  • Slides
  • Python database API
  • Requests
  • Click
Radovan
Dan
  • Slides
  • Numerical libraries
  • Plotting
  • Processing data