Импортировать функции Python в язык .NET? - PullRequest
5 голосов
/ 18 февраля 2009

Я программист на C # .NET и изучаю Python. Я скачал IronPython и знаю, что он может вызывать библиотеки .NET.

Мне интересно, есть ли способ сделать обратное, то есть вызвать некоторые существующие "классические" библиотеки Python в моем коде C #, возможно, используя .NET Interop.

Я бы хотел иметь возможность доступа к функциям в библиотеках, таких как pygame.

Ответы [ 2 ]

5 голосов
/ 18 февраля 2009

Ironpython 2.0 совместим с CPython 2.5, поэтому чистый Python, использующий API <= 2.5, должен нормально работать под Ironpython. Я считаю, что код Ironpython может быть скомпилирован в DLL. </p>

Для C-расширений, таких как Pygame, вы можете взглянуть на Ironclad . Это проект, позволяющий использовать C-расширения в Ironpython. Это также может дать вам искомый кодовый мост, который вы ищете.

3 голосов
/ 19 февраля 2009

Вы можете использовать Python для .Net , что позволяет «использовать службы CLR и продолжать использовать существующий код Python и расширения на основе C, сохраняя при этом собственные скорости выполнения для кода Python».

Кроме того, «ключевой целью этого проекта было то, что Python для .NET должен« работать так, как вы ожидаете в Python », за исключением случаев, которые являются специфическими для .NET (в которых цель состоит в том, чтобы работать "так, как вы ожидаете в C #"). Кроме того, с развитием проекта IronPython моя цель состоит в том, чтобы код, написанный для IronPython, выполнялся без изменений в Python для .NET. '

Надеюсь, это поможет

...