5

我是一名 C# .NET 程序员,正在学习 Python。我已经下载了 IronPython,并且知道它可以调用 .NET 库。

我想知道是否有相反的方法,即在我的 C# 代码中调用一些现有的“经典”Python 库,可能使用 .NET Interop。

我希望能够访问 pygame 等库中的函数。

4

2 回答 2

5

Ironpython 2.0 与 CPython 2.5 兼容,因此使用 <=2.5 API 的纯 Python 在 Ironpython 下应该可以正常工作。我相信 Ironpython 代码可以编译成 DLL。

对于像 Pygame 这样的 C 扩展,您可能想看看Ironclad。这是一个允许在 Ironpython 中使用 C 扩展的项目。这也可能为您提供您正在寻找的本机代码桥。

于 2009-02-18T19:32:18.787 回答
3

您可以将Python 用于 .Net,它允许您“使用 CLR 服务并继续使用现有的 Python 代码和基于 C 的扩展,同时保持 Python 代码的本机执行速度。”

此外,“该项目的一个关键目标是 .NET 的 Python 应该“按照您在 Python 中所期望的方式工作”,除了特定于 .NET 的情况(在这种情况下,目标是“只是你在 C# 中所期望的方式")。此外,随着 IronPython 项目获得关注,我的目标是为 IronPython 编写的代码无需修改即可在 Python for .NET 下运行。

希望这可以帮助

于 2009-02-19T05:12:58.063 回答