Я думаю, что гибкость и простота использования (читаемый код, множество библиотек / пакетов) - это большие преимущества.
Относительно
- обеспечивает быстрое прототипирование системных приложений с использованием библиотек c ++ с использованием оболочек swig
На самом деле я работаю над продуктом Python для математического и статистического анализа (PyIMSL Studio), специально разработанным для решения этой проблемы, хотя мы используем ctypes вместо swig. По разным причинам многие компании используют C / C ++ в своих корпоративных приложениях. Если они хотят добавить некоторую аналитическую функциональность, то создание прототипа в Python может быть намного быстрее, чем в C. Наши библиотеки Python обертывают наши числовые библиотеки C 1: 1, поэтому, когда прототипирование выполнено, разработка продукта может быть уверена, что те же алгоритмы доступны и те же результаты будут достижимы. При переходе от очень специфичного для предметной области языка, такого как R или MATLAB, к C может быть сложнее связать этот прототип с производственным разрывом, чем с языком очень общего назначения, таким как Python.
Относительно
- построен в соответствии с четко определенной спецификацией языка
вам следует взглянуть на публичные комментарии для предложения Комиссии по безопасности и обмену сделать Python языком, используемым в новых правилах безопасности, поддерживаемых сборкой. Некоторые люди утверждают, что Python должен , а не быть языком именно потому, что он не имеет четко определенной спецификации языка, кроме (множественных) ссылочных реализаций. Мне нравится язык, но я бы не рассматривал аспект спецификации языка как причину.
Наконец, я думаю, что есть много Pythonistas, которые хотели бы, чтобы их организация разрешила использование Python или использовала его в большей степени. Из того, что я видел, Python вкрадывается вначале для общих проектов, связанных с IT-связями, и оттуда начинает использоваться многими другими способами.