Appeler des bibliothèques C# à partir de Python
Tenter d'invoquer des bibliothèques C# à partir de Python est un problème courant. Bien que des options telles qu'IronPython puissent rencontrer des problèmes de compatibilité, une approche alternative consiste à appeler du code C# à partir de Python.
Pour y parvenir, suivez ces étapes :
Utilisation du package NuGet UnmanagedExports
Intégrez le package NuGet « UnmanagedExports » dans votre projet .Net, comme indiqué dans https://sites.google.com/site/robertgiesecke/Home/uploads/unmanagedexports.
Exportation de fonctions sans COM
Avec "UnmanagedExports", vous pouvez exporter fonctionne directement, en contournant la couche COM. Considérez cet exemple de code C# :
using System; using RGiesecke.DllExport; class Test { [DllExport("add", CallingConvention = CallingConvention.Cdecl)] public static int TestExport(int left, int right) { return left + right; } }
Chargement et appel de fonctions exportées en Python (2.7)
En Python, vous pouvez charger la DLL et appeler les méthodes exportées comme suit :
import ctypes a = ctypes.cdll.LoadLibrary(source) a.add(3, 5)
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!