Python 3.10¶
Python 3.10.0 (finální verze) byla vydána 4. října 2021. Funkce verze 3.10 jsou definovány v PEP 619 a podrobný popis změn naleznete v What’s New in Python 3.10.
Nové syntaktické funkce | Stav | |
Strukturální porovnávání vzorů: Specifikace | ||
Strukturální porovnávání vzorů: Motivace a zdůvodnění | ||
Strukturální porovnávání vzorů: Tutoriál | ||
Kontextové správce v závorkách jsou nyní oficiálně povoleni | ||
Nové funkce ve standardní knihovně | ||
Přidání volitelné kontroly délky do zip | ||
Vylepšení interpretu | ||
Přesná čísla řádků pro ladění a další nástroje | ||
Nové funkce typování | ||
Umožnění zápisu sjednocení typů jako X | Y | ||
Explicitní aliasy typů | ||
Proměnné pro specifikaci parametrů | ||
Důležité zastaralé prvky, odstranění nebo omezení | ||
Vyžaduje OpenSSL 1.1.1 nebo novější | ||
Označení modulu distutils za zastaralý. | Není relevantní | |
Označení členu wstr v PyUnicodeObject za zastaralý a příprava na jeho odstranění. | Není relevantní | |
Odstranění API kodérů Py_UNICODE | Není relevantní | |
Přidání volitelného EncodingWarning | ||
Další změny jazyka:
Typ | |
Pohledy vrácené metodami | |
PEP 618: Funkce | |
Vestavěné funkce a funkce z rozšíření, které přijímají celočíselné argumenty, již nepřijímají objekty | |
Pokud | |
Přiřazovací výrazy lze nyní použít bez závorek v literálech množin a generátorech množin, stejně jako v indexech sekvencí (ale ne ve výřezech). | |
Funkce mají nový atribut | |
Byly přidány dvě nové vestavěné funkce – | |
Statické metody ( | |
Anotace pro složené cíle (vše kromě cílů typu | |
Objekty tříd a modulů nyní vytvářejí prázdné slovníky anotací líně na vyžádání. Slovníky anotací jsou kvůli zpětné kompatibilitě uloženy v atributu | |
Anotace obsahující | |
Použití nevázaných proměnných, | |
Hashe hodnot NaN typu | |
Při mazání konstanty | |
Výjimky |
Změny ve vestavěných modulech:
Přidání chybějící metody | |
Metoda | |
Přidání auditních háčků pro | |
Modul hashlib vyžaduje OpenSSL 1.1.1 nebo novější. | |
Modul hashlib má předběžnou podporu pro OpenSSL 3.0.0. | |
Čistě Pythonová záložní implementace | |
Přidání podpory | |
Přidání nové funkce | |
Přidání | |
Přidání | |
Přidání | |
Výjimka | |
Přidání možnosti vytvářet sokety MPTCP pomocí | |
Přidání možnosti | |
Modul ssl vyžaduje OpenSSL 1.1.1 nebo novější. | |
Modul ssl má předběžnou podporu pro OpenSSL 3.0.0 a novou možnost | |
Zastaralé funkce a použití zastaralých konstant nyní vedou k | |
Modul ssl má nyní bezpečnější výchozí nastavení. Šifry bez dopředného utajení nebo s MAC SHA-1 jsou ve výchozím nastavení zakázány. Úroveň zabezpečení 2 zakazuje slabé klíče RSA, DH a ECC s méně než 112 bity zabezpečení. | |
Zastaralé protokoly SSL 3.0, TLS 1.0 a TLS 1.1 již nejsou oficiálně podporovány. Python je aktivně neblokuje. Avšak volby sestavení OpenSSL, konfigurace distribucí, dodavatelské záplaty a šifrovací sady mohou zabránit úspěšnému handshake. | |
Přidání parametru timeout do funkce | |
Modul ssl používá heap-types a vícefázovou inicializaci. | |
Byl přidán nový ověřovací příznak | |
Přidání atributu | |
Přidání | |
| |
Poznámky