Nouvelles Du Monde

Cython offre la simplicité de Python, la vitesse de C++

Cython offre la simplicité de Python, la vitesse de C++

Python est le langage de programmation préféré pour travailler avec des ensembles de données volumineux, ce qui en fait le choix incontournable pour l’apprentissage automatique, l’intelligence artificielle et l’analyse statistique.

Mais ce n’est pas sans défauts, la vitesse étant l’une de ses principales faiblesses et une autre son incapacité à interagir avec le matériel. C, d’autre part, est plus rapide et peut interagir avec le matériel, mais a une courbe d’apprentissage abrupte.

Cyton, un sur-ensemble de Python, comble le fossé entre Python et C ou C++. Son objectif est de rendre l’écriture d’extensions C pour Python aussi simple que Python lui-même. La raison en est que les extensions C peuvent fonctionner beaucoup plus rapidement en tant que modules autonomes que celles exécutées via l’interpréteur Python.

Les développeurs de Cython ont publié Cython 3.0 plus tôt ce mois-ci avec quelques améliorations notables.

Ce récent article de blog écrit par Mike James a fait un excellent travail en couvrant les bases de la dernière version de Cython. Cython a étendu l’utilisation du mode Python pur, renforcé sa compatibilité NumPy et effectué des mises à jour internes pour améliorer la compatibilité future avec Python.

Les bases

Cython est un compilateur statique d’optimisation pour le langage de programmation Python et le langage de programmation étendu Cython (basé sur Pyrex, un langage de type Python pour écrire rapidement et facilement des modules d’extension Python). Il offre aux développeurs la possibilité d’écrire du code Python qui appelle vers et depuis C ou C++ de manière native.

Lire aussi  Voici le Redmi Note 12 Pro+, un mobile qui se démarque dans le milieu de gamme avec un appareil photo 200MP et sa charge en 20 minutes

En utilisant Cython, les développeurs peuvent transformer du code Python lisible en performances C simples en ajoutant une déclaration de type statique. En ajoutant ces efficacités, Cython aide Python à interagir plus efficacement avec de grands ensembles de données. Cython s’intègre nativement au code et aux données existants provenant d’applications et de bibliothèques héritées, de bas niveau ou hautes performances.

Cyton 3.0

Récemment, version 3 de Cython est sorti. La liste ci-dessous est un aperçu non exhaustif des nouvelles mises à jour de Cython.

Mode Python pur étendu

Historiquement, Cython utilisait sa propre syntaxe, une combinaison de Python et de la déclaration de type C. Cela a créé des défis en soi en limitant les capacités du développeur à dépanner et à déboguer avec les outils Python car il ne comprend pas la syntaxe de Cython. En guise de solution, les développeurs de Cython ont créé le “mode Python pur”.

Le mode Python pur est une syntaxe alternative entièrement compatible avec la syntaxe de Python. Cela signifiait que les développeurs pouvaient utiliser leurs outils d’analyse de linting et de code existants sur le code Cython. Le nouveau mode Python pur étendu signifie que la grande majorité des fonctions Cython sont désormais exposées en mode Python pur, y compris les fonctions permettant d’appeler des bibliothèques C externes.

Lire aussi  Les écureuils vivent plus longtemps dans les quartiers les plus verdoyants de Londres, selon une étude sur la pollution de l'air | Science

Compatibilité NumPy plus profonde

NumPy est une bibliothèque Python largement utilisée qui se concentre sur le calcul scientifique. NumPy crée un objet tableau multidimensionnel, divers objets dérivés et un assortiment de routines centrées sur l’exécution d’opérations rapides sur des tableaux. Les développeurs peuvent désormais écrire des ufuncs NumPy directement dans Cython. Une fonction numérique simple écrite en Cython peut être appliquée rapidement et facilement à l’ensemble du contenu d’une structure de données NumPy. Bien que Cython et NumPy aient toujours été compatibles, cette nouvelle fonctionnalité accélère et facilite le développement.

Modifications internes

Désormais, la construction de Cython est plus compatible avec les mises à jour en cours des modifications internes de Python. Python a une nouvelle “API limitée” qui expose un sous-ensemble stable garanti d’API Python, spécifiquement pour le type de tâches que Cython effectue pour se connecter à l’interpréteur Python. Cython a l’initiale, avec un support croissant, pour l’API limitée. Cela signifie que les extensions Cython conçues pour une version de Python fonctionneront également dans les futures versions de Python sans avoir besoin d’être recompilées.

Lire aussi  10 meilleurs jeux | Final Four | 2022-23 Turkish Airlines Euroligue

Dernières pensées

En tant que personne qui ne travaille pas souvent avec Python, je trouve intéressant que ce soit le troisième article en autant de mois que j’ai écrit sur des outils qui approfondissent la connexion entre Python et C. C’est un tel marqueur de l’endroit où l’industrie en train d’aller. Les ensembles de données deviennent de plus en plus volumineux, Python reste la référence, et maintenant ces outils apparaissent ou s’améliorent pour soutenir davantage la croissance.

Groupe Créé avec Sketch.

2023-08-06 18:13:17
1691336265


#Cython #offre #simplicité #Python #vitesse

Facebook
Twitter
LinkedIn
Pinterest

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.

ADVERTISEMENT