在没有IronPython的时候要在.NET程序中使用Python脚本必须要编写CPython的.NET包装器,这是一件比较复杂的事情。不过现在虽然有了IronPython,但是CPython包装器仍旧是有用的。我所看到的原因包括:
1、性能。虽然我还没有测试IronPython的性能,但是按照我的估计,应该和CPython还是有一些差距的;
2、稳定性。IronPython目前只是1.01版,在稳定性上显然不能和已经有近十年历史的CPython相比;
3、功能。CPython是Python的官方版本,目前已经发展到了2.5。如果使用CPython,那么可以随时使用Python的最新特性,而使用IronPython则往往要迟后一个子版本的时间(大约是数个月到一年);
4、扩展库。IronPython的扩展性很好,但是毕竟CPython已经有了很多现有的库可以使用。目前还不清楚IronPython是否兼容于这些库,如果没有兼容的话那么IronPython在目前情况下的库将比CPython少不少。