Eldono de Python 3.8

La plej interesaj novigoj:

  • Asigno-esprimo:

    La nova := operatoro permesas vin asigni valorojn al variabloj ene de esprimoj. Ekzemple:
    se (n := len(a)) > 10:
    print(f"Listo estas tro longa ({n} elementoj, atendataj <= 10)")

  • Poziciaj nuraj argumentoj:

    Vi nun povas specifi kiuj funkcioparametroj povas esti pasigitaj tra nomita argumentsintakso kaj kiuj ne povas. Ekzemplo:
    def f(a, b, /, c, d, *, e, f):
    presi (a, b, c, d, e, f)

    f(10, 20, 30, d=40, e=50, f=60) # Bone
    f(10, b=20, c=30, d=40, e=50, f=60) # eraro, `b` ne povas esti nomita argumento
    f(10, 20, 30, 40, 50, f=60) # eraro, `e` devas esti nomita argumento

    Ĉi tiu ŝanĝo donas al programistoj manieron protekti uzantojn de siaj API-oj kontraŭ ŝanĝoj en funkcio-argumentnomoj.

  • Subteno f-ŝnuroj = por memdokumentaj esprimoj kaj senararigado:

    Aldonita sukero por simpligi sencimigajn/registrajn mesaĝojn.
    n = 42
    print(f'Saluton mondo {n=}.')
    # presigos "Saluton mondo n=42."

  • Riparis la daŭrigi ŝlosilvorton en la fine bloko (ĝi ne funkciis antaŭe).

Aliaj:

  • Vi povas eksplicite specifi la vojon al la bajtkoda kaŝmemoro anstataŭ la defaŭlta __pycache__.
  • Sencimigaj kaj Eldonaj konstruoj uzas la saman ABI.

fonto: linux.org.ru

Aldoni komenton