Release von Python 3.8

Die spannendsten Neuerungen:

  • Zuweisungs-Ausdruck:

    Der neue Operator := ermöglicht die Zuweisung von Werten an Variablen innerhalb von Ausdrücken. Zum Beispiel:
    if (n := len(a)) > 10:
    print(f"Die Liste ist zu lang ({n} Elemente, erwartet <= 10)")

  • Positionsabhängige Argumente:

    Jetzt kann angegeben werden, welche Funktionsparameter über die Syntax benannter Argumente übergeben werden können und welche nicht. Beispiel:
    def f(a, b, /, c, d, *, e, f):
    print(a, b, c, d, e, f)

    f(10, 20, 30, d=40, e=50, f=60) # OK
    f(10, b=20, c=30, d=40, e=50, f=60) # Fehler, `b` kann nicht benannt werden
    f(10, 20, 30, 40, 50, f=60) # Fehler, `e` muss benannt werden

    Diese Änderung gibt Entwicklern die Möglichkeit, Benutzer ihrer APIs vor Änderungen in den Namen der Funktionsargumente zu schützen.

  • Unterstützung für f-Strings = für selbstdokumentierende Ausdrücke und Debugging:

    Es wurde eine Vereinfachung für Debugging-/Logging-Nachrichten hinzugefügt.
    n = 42
    print(f'Hallo Welt {n=}.')
    # напечатает "Hello world n=42."

  • Das Schlüsselwort continue in einem finally-Block wurde repariert (früher funktionierte es nicht).

Sonstiges:

  • Der Pfad zum Bytecode-Cache kann explizit angegeben werden, anstelle des standardmäßigen __pycache__.
  • Debug- und Release-Bauten verwenden dasselbe ABI.

Quelle: linux.org.ru

Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server 🔥 Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster