Python For SAP Developers (2023-03-13 - 2023-03-15)

Day 1 (Basics)

Goal: gain a basic understanding of Python: variables, datatypes, some language internals (good to know if one wants to do more).

Demo

Setup

Datatypes

An overview of the language, how variables are used, and which primary datatypes there are.

Exercises

Day 2 (Basics, Continued)

Control Flow, Sequences, Iteration

Basic branching and looping. Iteration (via the for loop) is an important topic in Python, which is why we dedicate some time to it.

Exercises

More Datatypes

There is more to say about datatypes than what has already been said (there is always more to everything in Python). What’s mutable, va. immutable, and what are the consequences? How can we save another three lines of code? What’s Pythonic?

Exercises: Functions

More about datatypes …

Exercises, File I/O, Strings

Day 3

Pandas

From Pandas

Hacking About On A SAP Test Dataset

Untold (From Original Agenda)

Goal: there’s always more. OO isn’t necessary, for example, nonetheless Python is strongly object oriented internally [1]. Exception handling isn’t necessary either (one can always let exceptions pass by and terminate the program). Knowing what decorators are isn’t necessary either, much like the iterator protocol, or context managers.

Encoding

OO Introduction

Python is strongly object oriented internally - even an int is an object of class int, for example. It does not impose OO knowledge on its users though; nevertheless knowing a bit of it cannot hurt.

Exception Handling

Error handling is commonly done using exceptions - a construct that lets you focus your code on the sunny case, and do clumsy error handling in a separate section of the code.

Context Managers (Automatic Cleanup)

Much like error handling, resource cleanup tends to become clumsy. Context managers are a way to bring more structure to that part of a program.

Iteration, Generators, Comprehensions

Iterating over large sets of data - while at the same time saving resources - is one of the absolute strengths of Python. Lets dive a bit deeper into what a for loop actually is.

Unit Testing

Machine Learning: Pandas, NumPy, And Algorithms

From Machine Learning, Artificial Intelligence

Footnotes