Advanced Python – Advanced Programming Techniques: 3-Day Virtual Seminar (English)

Medien

Advanced Python – Fortgeschrittene Programmierthemen: virtueller Zwei-Tage-Workshop - Golem Karrierewelt
Advanced Python – Fortgeschrittene Programmierthemen: virtueller Drei-Tage-Workshop - Golem Karrierewelt

Beschreibung

What does the workshop offer me?

Python is easy to learn, but it also provides advanced features for solving more complex programming tasks. This Advanced Python workshop explains how these features work and how they can be used effectively.

The course covers advanced Python programming techniques, metaprogramming and Python-specific approaches. Practical exercises help participants apply the concepts directly.

What will participants learn?

Participants deepen their knowledge of Advanced Python and learn how to use advanced programming techniques in practice.

The workshop covers:

  • Comprehensions and generator expressions
  • Iterators and generators
  • Lazy evaluation and yielding
  • Coroutines and concurrent solutions
  • The itertools module
  • Decorators for functions and classes
  • Caching, proxying and argument checking
  • Context managers and the with statement
  • The contextlib module
  • Descriptors and customized attribute access
  • Metaclasses
  • Wrapping instead of inheritance
  • Dependency injection
  • Factories
  • Duck typing
  • Monkey patching
  • Callbacks
  • PEP 8, PyLint and Python code style

Exercises at the end of each unit provide opportunities to apply the newly learned Advanced Python concepts.

Who is the course suitable for?

The Advanced Python workshop is aimed at software developers and software engineers with intermediate Python knowledge. It is designed for Python programmers who want to deepen their understanding of the language.

Participants who need to strengthen their Python knowledge first can attend the Python for Programmers course.

What do participants receive?

Participants use an online programming environment that contains all required software. No additional software installation is required.

Participants receive:

  • Practical exercises for the individual course units
  • Access to the online programming environment
  • Comprehensive course materials in PDF format
  • All source code used in the course

A modern internet browser and a reliable internet connection are sufficient to participate.

Why this workshop?

Advanced Python features can simplify programming tasks and help developers create structured solutions. The workshop explains how these features work instead of focusing only on their syntax.

Participants combine theoretical knowledge with practical exercises. This makes it possible to apply Advanced Python techniques directly during the workshop.

Agenda

Comprehensions

The principle comes from the functional language Haskell but integrates very well into Python. After list comprehension came generator expressions followed by dictionary and set comprehensions.

The course introduces this style of programming with examples focusing on advantages and disadvantages for certain tasks.

Iterators and Generators

Iterators and generator make lazy evaluation, that is generating an object just when it is needed, very convenient. The concept of yielding instead of returning plays a central role. The course shows how to use generators to simplify programming tasks. Furthermore, coroutines will be used to implement concurrent solutions. An overview over the itertools module shows how to elegantly solve iteration tasks.

Decorators

Decorator provide a very useful method to add functionality to existing functions and classes. The course uses examples for caching, proxying, and checking of arguments to demonstrate how decorators can improve code readability and can simplify solutions.

Context Managers

The with statement helps to make code more robust by simplifying exception handling. The course shows how to use the with statement with the standard library and how to write your own objects that take advantage of with. The contextlib from the standard library helps to make this easier.

Descriptors

Descriptors determine how attribute of object are accessed. The course uses examples to show how descriptors work and how they can be used to customize attribute access.

Metaclasses

Metaclasses offer a powerful way to change how classes in Python behave. Whíle being an advanced feature that should be used sparingly, it can provide interesting help for complex problems. The course shows how to apply metaclasses and gives examples where they can be useful.

Conventions

Python offers a lot of functionality out of the box where other languages need to use design patterns. These patterns are general solutions for certain types of problems.

Python offers what is called the “pythonic” way for solving a problem. The course presents of a few of these solutions:

  • wrapping instead of inheritance
  • dependency injections
  • factories
  • duck typing
  • monkey patching
  • callbacks

Good Style

Python is often described as an elegant language. Consistency is contributing to this. There are several recommendations and tools that help to check for them. The course has a closer look at the Python style guide (PEP8) and uses PyLint and pep8.py with examples. The participants are encouraged to bring their source code for style analysis.

    Dozent

    Dr.-Ing. Mike Müller

    Dr.-Ing. Mike Müller nutzt Python seit 1999 und unterrichtet die Sprache seit 2004. Er ist Gründer und CEO der Python Academy in Leipzig, Gründungsmitglied der Leipzig Python User Group, Mitorganisator zahlreicher Python-Konferenzen sowie Vorstandsvorsitzender des Python Software Verbandes e.V. Als Unterstützer und Speaker ist Mike regelmäßig bei allen wesentlichen Python-Konferenzen wie der PyCon US, der EuroPython, der PyCon DE u.v.m. präsent. Er hat weit über 1.000 Tage Erfahrung im Unterrichten von Python.

    Weitere Trainings des Dozenten:

    Auf einen Blick

    Was lerne ich in diesem Kurs?

    • Comprehensions: list/generator expressions, dictionary/set comprehensions, task advantages
    • Iterators and Generators: lazy evaluation, yielding, itertools, coroutines, concurrency
    • Decorators: functionality, caching, proxying, argument checking, readability
    • Context Managers: with statement, exception handling, contextlib, custom objects
    • Metaclasses: class behavior, advanced feature, complex problems, sparing use

    Worum geht es in dem "Advanced Python – Advanced Programming Techniques: 3-Day Virtual Seminar (English)"?

    Bei "Advanced Python – Advanced Programming Techniques: 3-Day Virtual Seminar (English)" geht es um Iterators and Generators: lazy evaluation, yielding, itertools, coroutines, concurrency und Decorators: functionality, caching, proxying, argument checking, readability.

    Um welche Art von Training handelt es sich?

    Dies ist ein Workshop Training mit interaktiven Sitzungen und praktischem Lernen.

    Welches Erfahrungsniveau ist erforderlich?

    Dieser Kurs richtet sich an fortgeschrittene Lernende, die bereits über Grundkenntnisse verfügen.

    Wer ist der Dozent?

    Dr.-Ing. Mike Müller

    Dr.-Ing. Mike Müller nutzt Python seit 1999 und unterrichtet die Sprache seit 2004. Er ist Gründer und CEO der Python Academy in Leipzig, Gründungsmitglied der Leipzig Python User Group, Mitorganisator zahlreicher Python-Konferenzen sowie Vorstandsvorsitzender des Python Software Verbandes e.V. Als Unterstützer und Speaker ist Mike regelmäßig bei allen wesentlichen Python-Konferenzen wie der PyCon US, der EuroPython, der PyCon DE u.v.m. präsent. Er hat weit über 1.000 Tage Erfahrung im Unterrichten von Python.

    Wie viel kostet es?

    Der Preis beträgt 1.400,00 EUR.

    Customer Reviews

    Based on 1 review
    100%
    (1)
    0%
    (0)
    0%
    (0)
    0%
    (0)
    0%
    (0)
    M
    M. Ullmann
    Staff Embedded Software Engineer, Xilinx

    Kleine Gruppe und gut vorbereitete Übungen

    Datum
    Uhrzeit

    1.666,00 EUR inkl. MwSt./USt
    1.400,00 EUR zzgl. MwSt./USt.