2009-10-23 7 views
5

Я программировал на Python уже несколько лет и всегда использовал CPython, не задумываясь об этом. Книги и документация, которые я прочитал, всегда относятся к CPython., когда использовать альтернативное распределение Python?

Когда имеет смысл использовать альтернативное распределение (PyPy, Stackless и т. Д.)?

Спасибо!

ответ

8

Если вам нужно встроенное сопряжение с JVM, используйте Jython.

Если вам необходимо встроенное взаимодействие с платформой .NET или хотите использовать Winforms, используйте IronPython.

Если вам нужна последняя версия, поддержка кросс-OS, используйте существующие C-модули, существующие только для CPython, используйте ее.

Если вы планируете использовать функциональный PEP, переход Pypy может оказаться полезным.

Если вам нужно сделать что-то, что делает Python (т. Е. Микропоточность), вы можете пойти по пути Stackless или на любом другом языке (Haskel и т. Д.).


В альтернативных вариантах внедрения всегда за CPython, большинство в настоящее время цели 2.5.

Как Jython, так и IronPython являются хорошими способами: sneak in Python в магазинах только для MS или Java, как правило, благодаря их использованию для unittests.

0

Я думаю, что когда использовать IronPython или Jython, понятно. Если вы хотите использовать Python на CLR/JVM, либо в качестве основного языка, либо языка сценариев для вашего приложения C#/Java.