Frage

Ich bin gerade im Python, weil ich wirklich wie die Text-Parsing-Funktionen und die nltk Bibliothek, aber traditionell bin ich ein .Net / C # -Programmierer. Ich glaube nicht, Ironpython ein Integrationspunkt ist für mich, weil ich bin mit NLTK und vermutlich einen Hafen dieser Bibliothek in den CLR benötigen würde. Ich habe für .NET ein wenig unter Python sah und frage mich, ob dies ein guter Ort war anfangen. Gibt es eine Möglichkeit, eine Python-Klasse in C # Marschall? Auch ist diese Lösung noch verwendet? Noch besser wäre es, hat jemand dies getan? Eine Sache, die ich überlege sich nur mit einem Persistenzmedium als go-between (Parsing in Python, Speicher in MongoDB und laufen Website in .NET).

War es hilfreich?

Lösung

NLTK ist pure-Python und somit kann gemacht werden, auf Ironpython leicht auszuführen. Eine Suche aufgedreht dieses Ticket - alles, was man tun muss, ist eine Installation von paar zusätzlichen Python-Bibliotheken, die mit Ironpython standardmäßig nicht kommen.

Dies ist wahrscheinlich der einfachste Weg für Sie zu integrieren. Andernfalls werden Sie auf beide läuft Python als subprocess haben, die komplexen Sounds oder Python als einen Server ausführen, um Ihre Anfragen beantwortet. Dies ist wahrscheinlich die am besten skalierbare, obwohl komplex, Ansatz. Wenn Sie diesen Weg gehen, sollten Sie Verdrehte den Server-Code zu vereinfachen.

Aber versuchen Sie zuerst ... Ironpython

Andere Tipps

Ich weiß nicht, warum Sie ein Problem mit Ironpython haben. Sie können nach wie vor jeder nutzen und alle nltk nennt es.

Um Ihre Frage zu Portieren einer Python-Klasse in C # beantworten: try Kompilieren Ihren Python-Code in eine EXE . Dies schafft eine DLL mit all Ihren Python-Klassen in ihm. Dies ist etwas, das für eine Weile gibt es schon und es hat wie ein Zauber für mich in der Vergangenheit

gearbeitet

Nur eine Idee

Wie zum Ausführen von Python hinter als Server, und schließen Sie es von .NET mit Sockel?

Da NLTK Laden einige Zeit dauern und besser laden Sie es im Voraus trotzdem.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top