Accéder au contenu principal

Python 3.12 • Le registre

Python 3.12, la dernière version stable du langage de programmation Python, a été publiée lundi, offrant aux développeurs une poignée de nouvelles fonctionnalités et la suppression de certaines fonctionnalités inutiles.

La révision arrive presque un an après la précédente version stable, Python 3.11.

Python a récemment été classé comme le langage de programmation le plus populaire, le deuxième ou le troisième, selon la personne à qui vous le demandez. Quoi qu’il en soit, il s’agit de la lingua franca de la science des données et de l’IA, et d’un point d’entrée commun à la programmation en milieu universitaire.

La version 3.12 inclut des f-strings plus accommodantes, comme cela a été proposé dans la Python Enhancement Proposal (PEP) 701.

Une chaîne f, ou chaîne littérale formatée, est une chaîne littérale préfixée par un « f » – majuscule ou minuscule – de sorte qu’elle puisse contenir des champs de remplacement entre accolades qui sont évalués au moment de l’exécution. La plupart des langages de programmation ont quelque chose de ce genre et avec PEP 701, les composants d’expression dans une chaîne f peuvent être n’importe quelle expression Python valide. Ils peuvent désormais gérer les expressions multilignes, les commentaires, les barres obliques inverses et les séquences d’échappement Unicode.

PEP 695 offre une syntaxe de paramètre de type améliorée qui rend les variables de type plus faciles à comprendre. Il permet aux développeurs de déclarer des paramètres de type “à un endroit naturel dans une instruction de déclaration de classe, de fonction ou d’alias de type”.

Python implémente un Global Interpreter Lock, ou GIL, qui empêche plusieurs threads Python de s’exécuter en même temps. Le GIL devrait devenir facultatif dans la prochaine version de Python 3.13 car il entrave la concurrence – c’est un goulot d’étranglement de sécurité qui bloque les autres threads.

Dans cette version, Python a introduit un GIL par interprète avec PEP 684. Il permet la création de sous-interprètes, ce qui facilite le travail avec plusieurs cœurs de processeur. Dans un premier temps, cela doit être fait avec une API C, même si une API Python est prévue pour la version 3.13. L’un des cas d’utilisation potentiels consisterait à exécuter simultanément des sous-interprètes et à accéder à l’état partagé dans une bibliothèque C++ thread-safe.

La dernière mise à jour de Python prend également en charge PEP 669, une nouvelle API pour les profileurs, les débogueurs et autres outils de surveillance. Le PEP 669 est censé avoir « faible impact », de sorte qu’il peut être implémenté dans le code sans surcharge significative : les débogueurs et les profileurs sont connus pour ralentir le code d’un ordre de grandeur.

“Nous avons suivi et envisageons d’incorporer certaines des modifications apportées dans le cadre du PEP 669 pour améliorer les performances de la surveillance”, a déclaré Emery Berger, professeur d’informatique à l’Université du Massachusetts à Amherst. Le registre. Berger a également noté que SlipCover – un outil de couverture de code Python presque nul qu’il a développé avec l’étudiant diplômé Juan Altmayer Pizzorno – a servi d’inspiration pour le PEP 669.

Berger, Pizzorno et un autre étudiant diplômé, Sam Stern, ont également développé un profileur Python appelé Scalene. Et Berger a déclaré que lui et ses étudiants étudiaient comment ajouter certaines des modifications de Python 3.12 à leurs projets existants.

“Nous prévoyons d’utiliser [PEP 669] pour réduire davantage la surcharge du suivi au niveau ligne de l’utilisation de la mémoire par Scalene, en particulier pour certains cas pathologiques”, a déclaré Berger. “Pas de surprise, étant donné que SlipCover a été utilisé comme justification du PEP, nous envisageons de l’utiliser pour rationaliser et à l’avenir- preuve de la mise en œuvre de SlipCover.”

D’autres améliorations de Python 3.12 incluent le PEP 688, qui rend le protocole de tampon (un moyen d’accéder à la mémoire sous-jacente d’un objet) accessible via une API Python au lieu d’une simple API C, et le PEP 709, qui ajoute une optimisation du compilateur appelée inlining à la liste. , dictionnaire et compréhensions d’ensembles pour des performances améliorées.

Il existe également quelques améliorations des indications de type, pour ceux qui préfèrent être explicites sur les types de données Python (PEP 692 et PEP 698). Et les messages d’erreur ont été améliorés.

Enfin, au-delà des diverses améliorations du module, un grand nombre de fonctionnalités plus anciennes ont été supprimées après plusieurs années de purgatoire de dépréciation. Tous les détails sont disponibles dans la documentation en ligne. ®

Source

Commentaires

Posts les plus consultés de ce blog

Tenerife, joyau des Canaries : Un poème écrit par la nature

Tenerife vous appelle : sentiers sinueux, plages de sable blanc et culture vibrante. Un paradis accessible où chaque voyageur trouve son bonheur. Tenerife, joyau de l'imaginaire collectif, se dresse tel un tableau vivant dans l'azur de l'Atlantique. Imaginez-vous déambuler le long de sentiers sinueux, caressés par la brise marine, où chaque tournant dévoile mille merveilles insulaires. Les ruelles étroites des villages ancestraux murmurent des secrets séculaires, tandis que la chaleur des sourires locaux réchauffe l'âme du voyageur égaré. Reine incontestée de l'archipel des Canaries, Tenerife est un kaléidoscope d'expériences enivrantes. Ses plages de sable blanc, telles des colliers de perles nacrées, s'étirent langoureusement le long des côtes dentelées. Les vagues cristallines chuchotent des promesses d'aventures sous-marines, invitant les plongeurs à explorer un monde silencieux aux couleurs chatoyantes. Pour ceux qui préfèrent la terre ferme, l'

Le casino sur mobile, la nouvelle marotte des joueurs

En 2022, les américains ont dépensé plus de 4,6 milliards de dollars dans les casinos en ligne sur mobile , une augmentation de plus de 20 % par rapport à 2020. Ce qui est intéressant est que c’est justement 2020 et la période du Covid qui a fait exploser les compteurs puisque les gens, enfermés chez eux, n’avaient rien à faire et les passe-temps ludiques se sont rapidement combinés avec l’appat du gain. Popularisé depuis la Chine Si les jeux d’argent deviennent la norme sur nos smartphones, la Chine a été pionnière dans ce domaine . Vice millénaire, les chinois ont massivement popularisé des jeux mêlant des récompenses avec des gains indirects pour contourner la législation chinoise qui est très stricte . L’anecdote est que l’utilisation des VPN ont explosé en Chine à partir de 2015, non pour contourner la censure gouvernementale, mais pour pouvoir accéder à des casinos en ligne à l’étranger. Les jeux d’argent ont également conquis le coeur des mobinautes à cause de la frontière flou

Recette de shami kakab (boulettes panées de poulet et de pommes de terre)

Le principe de la Shami kabab est similaire à celui de la catless . On va prendre des morceaux de blancs de poulet coupés en morceaux, des pommes de terre ou des lentilles . On va faire cuire le tout avec des épices et former une pâte pour former des boulettes ou des galettes qu’on va frire avec de la panure. Les ingrédients 500 grammes de blancs de poulet 5 à 6 pommes de terre De la purée d’ail et de gingembre De la purée de piment Une cuillère à café de cumin Une cuillère à café de curcumin Une cuillère à café de coriandre en poudre Du sel et du poivre Deux oeufs battus De la farine Préparation Coupez le blanc de poulet en morceau, épluchez les pommes de terre et coupez-les aussi en morceaux. Ne les lavez pas après l’épluchage, car on veut l’amidon pour la liaison. Dans une casserole, mettez tous les ingrédients et faire cuire à feu doux pendant 30 à 40 minutes avec la casserole couverte. Pour le mouillement, remplissez la casserole de moitié. On veut que cela cuise et que tous les é