Linux E X P R E S

Facebook

Novinky prichádzajúce s Python 3.7

python.png

V strede júna nás čaká nová verzia programovacieho jazyka Python. Čo nám všetko prinesie? Napr. nový UTF-8 režim, data classes či novú možnosť vyvolania ladenia. 


Najdôležitejšie novinky v Python 3.7:

Nový UTF-8 režim

Kódovanie napr. textu, rôznych súborov, vstupov či výstupov je vždy veľkou vedou. Python 3.7 prichádza so šikovným režimom UTF-8, ktorý ignoruje lokálne nastavené kódovanie a kódovanie prebieha len v UTF-8. V POSIX lokalizácii má predvoľbu nastavenú na bezproblémové použitie, avšak v ostatných lokalizáciách je režim zakázaný. No nemusíte zúfať, je možné užívateľsky povoliť režim UTF-8, ale len na vlastné riziko.

Data classes

S verziou Python 3.7 prichádzajú data classes, ktoré nám uľahčia tvorbu tried. Základom novinky je dekorátor triedy dataclass(), ktorý používa anotácie premenných a automatický generuje metódy __init__, __repr__ a __eq__.

Štandardne definujeme triedu napr. takto:

class Vec:
    def __init__(self, vyska, dlzka, hlbka):
        self.vyska = vyska
        self.dlzka = dlzka
        self.hlbka = hlbka

S dekorátorom tried dataclass() prepíšeme na takýto tvár:

@dataclass
class Vec:
    vyska: int
    sirka: int
    hlbka: int

Ako vidíte, došlo k automatizácii a už nemusíme toľko písať kódu pri tvorbe tried so štruktúrovanými údajmi.

Intuitívnejšie vyvolanie ladenia s pomocou breakpoint()

Ak chcete vyvolať ladenie pred Python 3.7, musíte importovať knižnicu pdb a volať funkciu pdb.set_trace(). No v novej verzii vám stačí zavolať breakpoint().

Viac podrobností o novej verzii sa dozviete v online dokumentácii.

Diskuze (0) Nahoru