IronPython能替代CPython吗?

4 投票
3 回答
602 浏览
提问于 2025-04-15 17:01

IronPython现在是否已经成熟到可以直接替代CPython的地步了?

我想说明的是:我指的是IronPython能否运行那些最初是为CPython编写的应用程序(当然,不涉及.NET)

3 个回答

-1

IronPython在替代CPython时有一些问题,比如说:

基于CPython,你可以直接使用一些库,但在IronPython中,你必须使用ironclad,这样效率就很低,真让人受不了。

而且,如果你想使用.py文件,即使语法是一样的,也会出现很多错误。

所以,它们其实是两种不同的东西,只有语法是相同的。

IronPython唯一的优点就是可以很方便地被.NET加载。

3

这个东西在Linux上用mono测试过,效果很好。我经常用它来打开使用机会,正如Alex Martelli所说的那样,可以使用“地球上每一个.NET模块”。

我在访问第三方扩展模块时遇到了一些麻烦,但这些问题大多都是路径设置不对,调整起来很简单。

不过,我不太清楚在Mac上效果怎么样。

8

是的,基本上是这样,至少在Windows上使用“真正的”(微软的).NET环境时是这样的。如果你依赖于用C语言编写的扩展,可能可以用ironclad来解决问题;它支持Python 2.6,几乎所有的CPython标准库或第三方扩展模块(对于那些用Fortran或C++编写的模块可能不太容易,但这只是少数情况),当然还有地球上所有的.NET模块——这可真是个不错的选择!

至于在MacOSX或Linux上使用Mono的效果,那就是另一个问题了……

撰写回答