Maison > Article > développement back-end > nouvelles fonctionnalités de python3.8
Nouvelles fonctionnalités de python3.8
La version stable de Python 3.8 est sortie et le site officiel a publié un article présentant les nouvelles fonctionnalités. Les articles en vedette sont enregistrés ici.
Nouvel opérateur d'affectation:=
Fonction : Attribue une partie de la valeur dans une expression plus grande à une variable, car elle ressemble à yeux et dents d'un morse, l'opérateur := a un nom spécial : Walrus Operator
Exemple 1 :
if (n := len(a)) > 10: print(f"List is too long ({n} elements, expected <= 10)")
utilise := pour éviter d'appeler len() deux fois.
Nouveau symbole de syntaxe (paramètres de position uniquement) /
Fonction : Indique que les paramètres de certaines fonctions doivent être spécifiés en position et ne peuvent pas être utilisés comme paramètres de mots-clés.
Exemple
def f(a, b, /, c, d, *, e, f): print(a, b, c, d, e, f)
Dans cet exemple, les paramètres a et b sont des paramètres de position uniquement, tandis que c ou d peuvent être des paramètres de position uniquement ou des paramètres de mot-clé, e et f doivent être un argument de mot-clé.
Nouveau paramètre PYTHONPYCACHEPREFIX (-X pycache_prefix)
Fonction : configurez le cache de bytecode implicite pour utiliser une arborescence de système de fichiers parallèle distincte au lieu de dans Utilisez le sous-répertoire pycache par défaut dans chaque répertoire source.
Les versions de débogage partagent ABI avec les versions de version
f string new support = spécificateur pour les expressions auto-documentées et le débogage
f string est une chaîne littérale formatée, introduite dans Python 3.6 et devenue très populaire.
Un nouveau support pour le spécificateur = est ajouté cette fois dans la v3.8.
>>> user = 'eric_idle'>>> member_since = date(1975, 7, 31)>>> f'{user=} {member_since=}'"user='eric_idle' member_since=datetime.date(1975, 7, 31)" >>> delta = date.today() - member_since>>> f'{user=!s} {delta.days=:,d}''user=eric_idle delta.days=16,075'
PEP 578 : Hooks d'audit d'exécution Python / Hooks d'audit d'exécution
PEP ajoute des hooks d'audit et des hooks ouverts de vérification. Les deux versions sont disponibles en Python et en code natif, permettant aux applications et aux frameworks écrits en code Python pur de profiter des notifications supplémentaires, tout en permettant également aux intégrateurs ou aux administrateurs système de toujours activer l'audit.
PEP 587 : Configuration de l'initialisation Python
PEP 587 ajoute une nouvelle API C pour configurer l'initialisation Python, offrant un meilleur contrôle sur l'ensemble de la configuration et un meilleur rapport d'erreurs.
Autres
continue peut enfin apparaître légalement dans le bloc final:
Sous Windows, la boucle d'événements asynchrone (asyncio) par défaut a été modifiée à ProactorEventLoop
Sur macOS, la méthode de démarrage du spawn est ajoutée au multitraitement par défaut
Le multitraitement peut désormais utiliser des segments de mémoire partagée pour éviter la surcharge de cornichon entre les processus
typed_ast est fusionné ; de retour dans CPython ;
LOAD_GLOBAL est désormais 40 % plus rapide ;
pickle utilise désormais le protocole 4 par défaut, améliorant les performances
De nombreusesvidéos de formation Python
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!