Ta članek je zrcalni članek strojnega prevajanja, kliknite tukaj za skok na izvirni članek.

Pogled: 1683|Odgovoriti: 4

[Vir] .NET/C# kliče Python okolje za izvajanje .py skript

[Kopiraj povezavo]
Objavljeno 11. 2. 2025 ob 16:01:21 | | | |
Zahteve: Programiranje v Pythonu je danes zelo priljubljeno, široko uporabljeno v analizi podatkov in znanstvenih raziskavah, velikih modelih, globokem učenju itd., nekateri algoritmi modelov so napisani v Pythonu, za izvajanje python skript, posredovanje parametrov in pridobivanje rezultatov je treba uporabiti .NET. Spletne rešitve so: izvajanje procesov, IronPython, pythonnet in nazadnje pythonnet.

pythonnet-Python.NET

Python.NET je programski paket, ki programerjem v Pythonu omogoča skoraj brezhibno integracijo .NET Universal Language Runtime (CLR) in razvijalcem .NET omogoča zmogljiva orodja za skriptiranje aplikacij. Omogoča interakcijo Python kode s CLR in se lahko uporablja tudi za vgradnjo Pythona v .NET aplikacije.

Naslov:Prijava do hiperpovezave je vidna.

Pripravite Python okolje

Ta članek uporablja python-3.13.2-embed-amd64 kot tekoče okolje, vir:

Python embed paketi namestijo pakete z uporabo pip
https://www.itsvse.com/thread-10941-1-1.html

Python-3.13.2 paket za vgradnjo v 64-bitni prenos:Prijava do hiperpovezave je vidna.

Ustvarite novo .NET 8 konzolo

Ustvarite novo .NET 8 konzolno referenco z naslednjo referenco:

Ker bo pythonnet uporabljalBinaryFormatterrazred, bo med usmrtitvijo odvržena naslednja izjema:

Neobdelana izjema. System.NotSupportedException: BinaryFormatter serializacija in deserializacija sta v tej aplikaciji onemogočena. VidetiPrijava do hiperpovezave je vidna.za več informacij.

Za rešitev problema uredite .csproj vozlišče <PropertyGroup> in dodajte naslednjo konfiguracijo:

Celotna konfiguracija je naslednja:

Py.GIL() je pomembna funkcija v Python.NET knjižnici za pridobivanje in sprostitev Global Interpreter Locks (GIL). GIL je mehanizem v interpreterju CPython, ki zagotavlja, da v vsakem trenutku izvaja Python bajtkodo le ena nit. To je pomembno v večnitnem okolju, še posebej, če sta Python in .NET koda pomešana.

Pythonov plavajoči tip je pravzaprav dvojno precizni float (64 bitov), kar ustreza C#-jevemu dvojnemu tipu.

Izvajanje python kode neposredno

Za preprosto python kodo, ki jo je mogoče izvesti neposredno, je koda naslednja:



Pokliči python funkcijo

Koda je naslednja:



Namestitev v Linux okolje za testiranje

Testi so na voljo za normalno delovanje, naslednji:



Referenčni:
Prijava do hiperpovezave je vidna.
Prijava do hiperpovezave je vidna.
Prijava do hiperpovezave je vidna.




Prejšnji:Linux uporablja pyenv za namestitev Python okolja
Naslednji:Vtičnik za pomoč pri razvoju kode za Angular 18 Series (Thirty-One) VS
 Najemodajalec| Objavljeno 2025-2-11 ob 16:08:17 |
Pokličite python funkcijo s seznamno tabelo (<class 'list'>) kot argumentom


Koda je naslednja:


 Najemodajalec| Objavljeno 2025-2-11 ob 16:25:40 |
C# pokliče python funkcijo, da dobi vrednost n-te <razred 'tuple'> vrne

Koda je naslednja:



 Najemodajalec| Objavljeno 2025-2-24 09:27:40 |
CSnakes- Orodje za vdelavo Python kode v .NET projekte

Izvir:Prijava do hiperpovezave je vidna.
Dokumentacija:Prijava do hiperpovezave je vidna.
 Najemodajalec| Objavljeno 1. 9. 2025 ob 16:01:12 |
Prevedi v izvajanje bajtkode

Referenčni:Prijava do hiperpovezave je vidna.
Disclaimer:
Vsa programska oprema, programski materiali ali članki, ki jih izdaja Code Farmer Network, so namenjeni zgolj učnim in raziskovalnim namenom; Zgornja vsebina ne sme biti uporabljena v komercialne ali nezakonite namene, sicer uporabniki nosijo vse posledice. Informacije na tej strani prihajajo z interneta, spori glede avtorskih pravic pa nimajo nobene zveze s to stranjo. Zgornjo vsebino morate popolnoma izbrisati z računalnika v 24 urah po prenosu. Če vam je program všeč, podprite pristno programsko opremo, kupite registracijo in pridobite boljše pristne storitve. Če pride do kakršne koli kršitve, nas prosimo kontaktirajte po elektronski pošti.

Mail To:help@itsvse.com