Python 3.7

Uudet ominaisuudet:

Ominaisuus

Tila

PEP 538

Vanhan C-lokaalin pakottaminen UTF-8-pohjaiseksi lokaaliksi

PEP 539

Uusi C-API säikeen paikalliselle tallennukselle CPythonissa

PEP 540

UTF-8-tila

PEP 552

Deterministinen pyc

PEP 553

Sisäänrakennettu breakpoint()

PEP 557

Dataluokat

PEP 560

Ydintuki typing-moduulille ja geneerisille tyypeille

PEP 562

Moduulin __getattr__ ja __dir__

Osittainen

PEP 563

Annotaatioiden lykätty evaluointi

PEP 564

Aikafunktiot nanosekuntiresoluutiolla

Osittainen [1]

PEP 565

DeprecationWarning-varoituksen näyttäminen __main__-moduulissa

PEP 567

Kontekstimuuttujat

Muut kielen muutokset:

async ja await ovat nyt varattuja avainsanoja

Valmis

dict-objektien on säilytettävä lisäysjärjestys

Funktiolle voidaan nyt välittää yli 255 argumenttia; funktiolla voi nyt olla yli 255 parametria

bytes.fromhex() ja bytearray.fromhex() jättävät nyt huomiotta kaikki ASCII-tyhjemerkit, ei vain välilyöntejä

str, bytes ja bytearray saivat tuen uudelle isascii()-metodille, jolla voidaan testata, sisältääkö merkkijono tai tavut vain ASCII-merkkejä

ImportError näyttää nyt moduulin nimen ja moduulin __file__-polun, kun from ... import ... epäonnistuu

Kehäimportit, joissa on absoluuttisia importteja ja alimoduuli sidotaan nimeen, ovat nyt tuettuja

object.__format__(x, '') vastaa nyt ilmausta str(x) aiemman format(str(self), ''):n sijaan

Pinojäljitysten dynaamisen luonnin paremmaksi tukemiseksi types.TracebackType voidaan nyt instantioida Python-koodista, ja jäljitysten tb_next-attribuutti on nyt kirjoitettavissa

-m-valitsinta käytettäessä sys.path[0] laajennetaan nyt välittömästi täydeksi aloitushakemiston poluksi sen sijaan, että se jätettäisiin tyhjäksi hakemistoksi (mikä mahdollistaa importit nykyisestä työhakemistosta importin tapahtumahetkellä)

Uudella -X importtime-valinnalla tai PYTHONPROFILEIMPORTTIME-ympäristömuuttujalla voidaan näyttää kunkin moduulin importin ajoitus

Sisäänrakennettujen moduulien muutokset:

asyncio

Liikaa lueteltavaksi

gc

Uusia ominaisuuksia ovat gc.freeze(), gc.unfreeze(), gc-get_freeze_count

math

math.remainder() lisätty toteuttamaan IEEE 754 -tyylinen jakojäännös

re

Useita siistimisominaisuuksia, mukaan lukien parempi tuki tyhjien merkkijonojen mukaan jakamiseen sekä kopiointituki käännetyille lausekkeille ja match-objekteille

sys

sys.breakpointhook() lisätty. sys.get(/set)_coroutine_origin_tracking_depth() lisätty

time

Pääosin päivityksiä tukemaan nanosekuntiresoluutiota PEP564:ssä, katso yllä

Huomautukset