Cet article est un article miroir de traduction automatique, veuillez cliquer ici pour accéder à l’article original.

Vue: 1683|Répondre: 4

[Source] .NET/C# appelle l’environnement Python pour exécuter .py scripts

[Copié le lien]
Publié le 11-02-2025 à 16:01:21 | | | |
Exigences : La programmation en Python est très populaire aujourd’hui, largement utilisée dans l’analyse de données et la recherche scientifique, les grands modèles, l’apprentissage profond, etc. Certains algorithmes de modèles sont écrits en python, nécessitent utiliser .NET pour exécuter des scripts Python, passer des paramètres et obtenir des résultats. Les solutions en ligne sont : exécution de processus, IronPython, pythonnet, et enfin pythonnet.

pythonnet-Python.NET

Python.NET est un logiciel qui permet aux programmeurs Python d’intégrer presque sans interruption le .NET Universal Language Runtime (CLR) et offre aux développeurs .NET des outils puissants de script applicatif. Il permet au code Python d’interagir avec le CLR et peut également être utilisé pour intégrer du Python dans des applications .NET.

Adresse:La connexion hyperlientérée est visible.

Préparer l’environnement Python

Cet article utilise python-3.13.2-embed-amd64 comme environnement d’exécution, référence :

Les packages d’intégration Python installent des packages en utilisant pip
https://www.itsvse.com/thread-10941-1-1.html

Téléchargement du package embed Python-3.13.2 64 bits :La connexion hyperlientérée est visible.

Créer une nouvelle console .NET 8

Créez une nouvelle référence console .NET 8 avec la référence suivante :

Puisque pythonnet utiliseraFormateur binaireclasse, l’exception suivante sera lancée lors de l’exécution :

Exception non traitée. System.NotSupportedException : La sérialisation et la désérialisation BinaryFormatter sont désactivées dans cette application. VoirLa connexion hyperlientérée est visible.Pour plus d’informations.

Pour résoudre le problème, modifiez le nœud .csproj <PropertyGroup> et ajoutez la configuration suivante :

La configuration complète est la suivante :

Py.GIL() est une fonction importante dans la bibliothèque Python.NET pour obtenir et publier les verrous d’interprétation globale (GIL). GIL est un mécanisme dans l’interpréteur CPython qui garantit qu’un seul thread exécute un bytecode Python à la fois. C’est important dans un environnement multithread, surtout si le code Python et .NET est mélangé.

Le type float de Python est en réalité un float double précision (64 bits), correspondant au double type de C#.

Exécutez du code python directement

Pour le code python simple, qui peut être exécuté directement, le code est le suivant :



Appeler une fonction python

Le code est le suivant :



Déploiement dans l’environnement Linux pour les tests

Disponibles pour un fonctionnement normal, les tests sont les suivants :



Référence:
La connexion hyperlientérée est visible.
La connexion hyperlientérée est visible.
La connexion hyperlientérée est visible.




Précédent:Linux utilise pyenv pour installer l’environnement Python
Prochain:Plugin d’assistance au développement de code VS Angular 18 Series (Trente-et-un)
 Propriétaire| Publié le 11-02-2025 à 16:08:17 |
Appeler une fonction Python avec un tableau de liste (<classe 'list'>) comme argument


Le code est le suivant :


 Propriétaire| Publié le 11-02-2025 à 16:25:40 |
C# appelle une fonction python pour obtenir la valeur de retour de la tuple <classe « uple » >

Le code est le suivant :



 Propriétaire| Publié le 24-02-2025 à 09:27:40 |
CSnakes- Un outil pour intégrer du code Python dans des projets .NET

Source:La connexion hyperlientérée est visible.
Documentation:La connexion hyperlientérée est visible.
 Propriétaire| Publié le 2025-9-1 16:01:12 |
Démenti:
Tous les logiciels, supports de programmation ou articles publiés par Code Farmer Network sont uniquement destinés à l’apprentissage et à la recherche ; Le contenu ci-dessus ne doit pas être utilisé à des fins commerciales ou illégales, sinon les utilisateurs assumeront toutes les conséquences. Les informations sur ce site proviennent d’Internet, et les litiges de droits d’auteur n’ont rien à voir avec ce site. Vous devez supprimer complètement le contenu ci-dessus de votre ordinateur dans les 24 heures suivant le téléchargement. Si vous aimez le programme, merci de soutenir un logiciel authentique, d’acheter l’immatriculation et d’obtenir de meilleurs services authentiques. En cas d’infraction, veuillez nous contacter par e-mail.

Mail To:help@itsvse.com