Python Course for Geoscientists

Europe/Berlin
Angelika Heil, Jannek Squar (Uni HH), Karin Meier-Fleischer (DKRZ), Marco Kulüke (DKRZ), Ralf Mueller (DKRZ)
Description


Target group: beginner
 

In today's world, there is usually no way around the Python programming language in the geosciences. However, learning Python on your own is associated with many difficulties and leads only to unsatisfactory results, which is why this course was developed especially for beginners.

Python is an easy to learn but powerful programming language. The very extensive standard library offers almost everything you need. And if you need something more specific, you can usually download it for free from third-party distributions.

This workshop will take place via videoconference.

We only offer a limited number of course seats to ensure there is enough time to help with problems.

In advance, due to high demand, we will not be able to provide everyone registered to attend this course, but the next course will take place in spring next year ;).

This course is for beginners!


 

We are sorry, but the registration is now closed. 
The course is fully booked!

The next course will take place in spring 2024.

 

    • Day 1: Morning sessions
      • 1
        Welcome

        A short welcome to the participants and speakers.

      • 2
        Difference between a supercomputer and a mobile phone
        • what is a node, cpu
        • historical development
        • architecture
      • 3
        What is Python – short intro
        • difference between programming language and Python
        • assembler, compiler, interpreter
      • 4
        Jupyter Notebooks
        • connecting to Levante with Jupyterhub
        • Jupyterlab
        • Installation
      • 11:00 AM
        Break
      • 5
        Introduction to Linux
        • terminal
        • via WSL
        • command line and shell
        • editor
    • 12:30 PM
      Lunch Break
    • Day 1: Afternoon sessions
      • 6
        Syntax
        • case-sensitive
        • print
        • indentation and code blocks
        • line continuation
        • comments
      • 7
        Data types
        • boolean
        • integer
        • floating-point
        • complex
        • conversion between types
        • None
      • 8
        Strings
        • formatting
        • string functions
      • 9
        Lists, tuples, and sets
      • 10
        Dictionaries
        • creation
        • access
      • 3:15 PM
        Questions/Answers // End
    • Day 2: Morning sessions
      • 11
        Warmup about content of Day 1
      • 12
        Copy objects
        • shallow
        • deep
      • 13
        Basic operators and math functions
      • 14
        Conditions
      • 15
        Loops
        • for
        • while
      • 10:45 AM
        Break
      • 16
        List comprehensions
        • nested
      • 17
        Functions
      • 18
        File I/O
        • open
        • close
        • read
        • write
        • csv reader
    • 12:45 PM
      Lunch break
    • Day 2: Afternoon sessions
      • 19
        Exceptions, error handling
        • try and except
        • logging
        • debugging
      • 20
        Python in Action (GLOBAGRIM)
      • 3:30 PM
        Questions/Answers // End
    • Day 3: Morning sessions
      • 21
        Warmup about content of Day 2
      • 22
        Numpy
      • 10:45 AM
        Break
      • 23
        Xarray I
        • DataArray
        • Dataset
        • open_dataset / open_mfdataset
    • 12:30 PM
      Lunch break
    • Day 3: Afternoon sessions
      • 24
        Visualization I
        • Matplotlib
      • 3:30 PM
        Questions/Answers // End
    • Day 4: Morning sessions
      • 25
        Warmup about content of Day 3
      • 26
        Visualization II
        • Cartopy
      • 27
        Xarray II
      • 11:15 AM
        Break
      • 28
        Xarray III
    • Day 4: Afternoon sessions
      • 29
        Feedback
      • 30
        Questions and answers
    • 3:00 PM
      The End