Python topics
Python Slides
Python basics
usually 3 days for beginner programmers, 1 day for programmers with knowledge in other languages
- overview of Python and comparison to other programming languages
- installation
- working with the interactive Python console
- variables and basic data types
- composite types: dict, list, tuple
- help and documentation
- builtins and the standard library
- control structures
- if / else
- loops (while, for)
- functions
- code quality and linting
- debugging
Python intermediate
usually 2 days
- data types in depth
- strings and string processing
- bytes
- sequences
- object oriented programming and classes
- advanced use of control structures
- creating lists and dictionaries via comprehensions
- throwing and catching exceptions
- modules and packages
- package management in Python
Python in practice
- working with files and folders
- working with various file formats (text, JSON, CSV, XML, ...)
- regular expressions and pattern matching
- time and date
- HTTP client
- introduction to web development
- working with SQL databases
- working with Excel files
- graphical user interface
Python advanced
usually 1 day
- logging
- unit tests
- advanced object-oriented programming
- properties
- static attributes and methods
- magic methods
- inheritance
- iterators
- functions: advanced
- lambdas
- decorators
- functools
- memoization
- advanced data types: set, namedtuple, enum
- static typing
- parallelization: threads and multiprocessing