Python Clean Code

Seminar / Training Python Clean Code

Die pythonische Denkweise

  • Schreiben des pythonischen Codes
  • Benennen von
  • Ausdrücke und Anweisungen im Code
  • Verstehen der pythonischen Art, den Code zu schreiben
  • Docstrings auf Modulebene
  • Beschreibung der Docstring-Klasse
  • Schreiben der Pythonischen Kontrollstrukturen
  • Listenverständnis verwenden und es richtig machen
  • Sollte ein Lambda verwendet werden?
  • Verwendung von Generatoren im Vergleich zu List Comprehension
  • Warum nicht anders mit Schleifen umgehen?
  • Der bessere Bereich in Python 3

Auslösen von Exceptions

  • Verwendung von Finite zur Behandlung von Ausnahmen
  • Eigene Ausnahmeklassen
  • Behandlung von Ausnahmen
  • Minimaler Code

Datenstrukturen

  • Verwendung von Sets für Geschwindigkeit
  • Verwendung von Namedtupel für Rückgabe und Zugriff auf Daten
  • Sorgfältiger Umgang mit Listen und Bevorzugung von Generatoren
  • Verwendung von zip zur Verarbeitung einer Liste
  • Nutzung der integrierten Funktionen von Python

Vorteile des Wörterbuchs

  • Die Verwendung eines Wörterbuchs im Vergleich zu anderen Datenstrukturen
  • Geordnetes Wörterbuch vs. Standard-Wörterbuch vs. normales Wörterbuch
  • Umschalten von Anweisungen und Wörterbüchern
  • Möglichkeiten, zwei Wörterbücher zu verschmelzen

Bessere Funktionen und Klassen schreiben

  • Erstellen kleiner Funktionen
  • Rückgabe der Generatoren
  • Ausnahmen werfen, anstatt keine zurückzugeben
  • Hinzufügen des Verhaltens mit den Standard- und Schlüsselwortargumenten
  • Defensives Schreiben einer Funktion
  • Verwendung eines Lambdas als einzelner Ausdruck

Klassen

  • Korrekte Klassengröße?
  • Klassenstruktur und richtige Verwendung von @property
  • Abstrakte Klassenvererbung
  •  @classmethod für den Zugriff auf den Klassenstatus
  • public-Attributs anstelle von private

Module und Metaklassen

  • Module und Metaklassen
  • Die Organisation von Code durch Module
  • Datei __init__
  • __all__ zur vs. mporte
  • Verwendung von Metaklassen
  • Verwendung von __new__ zur Überprüfung von Unterklassen
  • __slots__
  • Klassenverhalten steuern mit Metaklassen

Python-Deskriptoren

  • Die Bedeutung von Python-Deskriptoren

Dekoratoren und Kontext-Manager

  • Dekoratoren
  • Ändern des Verhaltens mit Dekoratoren
  • Mehrere Dekoratoren verwenden
  • Dekoratoren, die Argumente akzeptieren
  • Dekorator-Bibliothek
  • Klassendekoratoren, um den Zustand zu erhalten und Parameter zu validieren

Kontext-Manager

  • contextlib zur Erstellung eines Kontextmanagers

Generatoren und Iteratoren

  • Iteratoren und Generatoren
  • itertools
  • Listen vs. Iteratoren
  • yield-Schlüsselwörter
  • Schnellerer Yield im Vergleich zu einer Datenstruktur

Neue Python-Funktionen

  • Einführung von async in Python
  • Asynchrone Generatoren
  • Typisierung / Typen in Python
  • Verlangsamen Datentypen den Code?
  • Einstieg in die Fallstricke
  • super ()-Methode
  • Bessere Behandlung von Pfaden mit pathlib
  • print ()-Funktion ist jetzt
  • F-Zeichenfolge
  • Nur Schlüsselwort-Argumente
  • Beibehaltung der Reihenfolge eines Wörterbuchs
  • Iterables Auspacken

Testen

  • Pytest vs. UnitTest
  • Testen von Eigenschaften
  • Testberichte
  • Automatisieren von Unit-Tests
  • Unit- und Integrationstests in Python

Python-Werkzeuge

  • Flake8 / Pylint
  • Pyenv für Virtualenv
  • Python Sphinx Dokumentation
  • Jupyter-Labor
  • Pycharm / VSCode / Sublime

Fehlersuche

  • Debugging-Werkzeuge
  • Haltepunkte
  • Logging-Modul
  • Metrik-Bibliothek zur Identifizierung von Engpässen
  • IPython

Voraussetzungen

Keine Voraussetzungen

Dieses Seminar hat den Level "Administration / Grundlagen".

Wenn Sie sich nicht sicher sind ob dieser Kurs das richtige Niveau für Sie hat, dann können Sie dies vorab mit dem Trainer abstimmen.

Ihre Ansprechpartner

  • Johannes Quante

    E-Mail:
    Telefon: + 49 (32) 212 619 106

  • Daniel Unger

    E-Mail:
    Telefon: + 49 (32) 212 619 107

  • Benjamin Meier

    E-Mail:
    Telefon: + 49 (32) 212 619 105

Was unterscheidet unsere Seminare?

Wir bieten Ihnen Seminare mit einem hohen Praxisbezug an. Die Inhalte und Übungen sind auf Ihre täglichen Aufgaben im Unternehmen ausgerichtet und verzichten vollständig auf Werbehinweise anderer Produkte des Softwareherstellers.

Alle Trainings bei uns sind herstellerunabhängig. Dies ermöglicht es uns kritische Betrachtungen zu den Produkten selbst und Vergleiche zu Wettbewerbern des Herstellers im Seminar anzubieten. Die Kursinhalte sind eigene Inhalte und aus den praktischen Erfahrungen unserer Trainer in Projekten abgeleitet.

Selbstverständlich können die Inhalte bei Firmenseminaren individuell an Ihre Bedürfnisse angepasst werden. Bitte sprechen Sie uns einfach an.

Buchung


Das Seminar wurde auf die Merkliste gesetzt


Das von Ihnen gewählte Seminar wurde bereits auf die Merkliste gesetzt


Bitte wählen Sie einen freien Termin aus


Bitte geben Sie Ihren Wunschtermin im Format tt.mm.jjjj ein


Bitte wählen Sie einen freien Termin aus


Bitte geben Sie den gewünschten Termin im Format tt.mm.jjjj der Schulung ein

Dauer 3 Tage, ca. 6h/Tag
1.Tag: 10:00 Uhr, weitere ab 09:00 Uhr
Preis € 1.410,00 zzgl. MwSt.
Sprache Deutsch - bei Firmenseminaren ist auch Englisch möglich
Seminarunterlagen Originaldokumentation des Herstellers auf Datenträger / Download / Weblink
Teilnahmezertifikat ja, selbstverständlich
Barriere freier Zugang an den meisten Standorten verfügbar
Verpflegung Kalt- / Warmgetränke, Mittagessen (wahlweise vegetarisch) - nicht bei Firmen- und Online Seminaren
Support 3 Anrufe im Seminarpreis enthalten
Methoden Vortrag, Demonstration, praktische Übungen am System
Seminararten Mit Trainer vor Ort: Öffentlich oder Inhaus - Alternativ als Webinar bestellbar
Durchführungsgarantie ja, ab 2 Teilnehmern, max. 8 Teilnehmer, Details

Wählen Sie einen freien Termin für Berlin aus
















Dauer 3 Tage, ca. 6h/Tag
1.Tag: 10:00 Uhr, weitere ab 09:00 Uhr
Preis € 3.900,00 zzgl. MwSt.
Sprache Deutsch - bei Firmenseminaren ist auch Englisch möglich
Seminarunterlagen Originaldokumentation des Herstellers auf Datenträger / Download / Weblink
Teilnahmezertifikat ja, selbstverständlich
Barriere freier Zugang an den meisten Standorten verfügbar
Verpflegung Kalt- / Warmgetränke, Mittagessen (wahlweise vegetarisch) - nicht bei Firmen- und Online Seminaren
Support 3 Anrufe im Seminarpreis enthalten
Methoden Vortrag, Demonstration, praktische Übungen am System
Seminararten Mit Trainer vor Ort: Öffentlich oder Inhaus - Alternativ als Webinar bestellbar
Durchführungsgarantie ja, ab 2 Teilnehmern, max. 8 Teilnehmer, Details

Geben Sie hier Ihren Wunschtermin für Berlin



Dauer 3 Tage, ca. 6h/Tag
1.Tag: 10:00 Uhr, weitere ab 09:00 Uhr
Preis € 1.410,00 zzgl. MwSt.
Sprache Deutsch - bei Firmenseminaren ist auch Englisch möglich
Seminarunterlagen Originaldokumentation des Herstellers auf Datenträger / Download / Weblink
Teilnahmezertifikat ja, selbstverständlich
Barriere freier Zugang an den meisten Standorten verfügbar
Verpflegung Kalt- / Warmgetränke, Mittagessen (wahlweise vegetarisch) - nicht bei Firmen- und Online Seminaren
Support 3 Anrufe im Seminarpreis enthalten
Methoden Vortrag, Demonstration, praktische Übungen am System
Seminararten Mit Trainer vor Ort: Öffentlich oder Inhaus - Alternativ als Webinar bestellbar
Durchführungsgarantie ja, ab 2 Teilnehmern, max. 8 Teilnehmer, Details

Wählen Sie bitte einen freien Termin aus
















© 2024 SCN GmbH. All rights reserved.