Pythonnet apporte Python à Microsoft .Net

Le package Pythonnet offre aux développeurs Python l'interopérabilité entre le .Net Common Language Runtime de Microsoft et l'implémentation CPython du langage.

Également connu sous le nom de Python pour .Net, le package permet aux développeurs de créer des scripts d'applications .Net ou de créer des applications entières en Python, à l'aide de services et de composants .Net intégrés dans n'importe quel langage ciblant le CLR. Il fournit également un outil de création de scripts d'application et permet d'intégrer du code Python dans une application .Net. Mais il y a des limites.

«Notez que ce package n'implémente pas Python en tant que langage CLR de première classe - il ne produit pas de code managé (IL) à partir de code Python», note la description de GitHub. "Il s'agit plutôt d'une intégration du moteur CPython avec le runtime .Net ou Mono."

Les développeurs peuvent ainsi utiliser les services CLR et le code Python existant et les extensions basées sur C tout en conservant des vitesses d'exécution natives pour le code Python. L'équipe Pythonnet travaille sur le support CLR et souhaite que Pythonnet fonctionne comme prévu en Python, sauf pour les cas spécifiques à .Net, auquel cas l'intention est de fonctionner comme les développeurs s'y attendraient en C #.

Sous Windows, Pythonnet prend en charge la version 4.0 du .Net CLR et fonctionne avec Mono, le framework .Net open source et multiplateforme, Linux et MacOS. Pour une implémentation de code managé pur de Python, les constructeurs de Pythonnet recommandent IronPython, une version open source de Python intégrée au .Net Framework.

Pythonnet est un autre exemple de la popularité croissante de Python, qui a connu un essor avec son utilisation dans les applications d'intelligence artificielle et qui a été salué pour sa facilité d'utilisation. Google, avec son récent projet Grumpy, a commencé à relier Python au propre langage Go du géant de la recherche.