Ctrl + K , Ctrl + C Комментарий блок
Ctrl + K , Ctrl + U Некомментарий блок
Я использую Python для обработки и анализа данных уже пару лет. так что я бы сказал это ' безусловно, соответствует цели.
Чего вы пытаетесь достичь в конце концов? Если вам нужен быстрый способ разработки читаемого кода, Python - отличный вариант и, безусловно, достаточно быстрый для первого удара по тому, что вы пытаетесь решить.
Почему бы не создать bash для каждого небольшого подмножества ваша проблема и сравните результаты с точки зрения времени разработки и времени выполнения? Тогда вы сможете принять объективное решение на основе некоторых релевантных данных ... или, по крайней мере, так я бы поступил: -)
Почему бы не провести по bash для каждого небольшого подмножества вашей проблемы и сравнить результаты с точки зрения времени разработки и времени выполнения? Тогда вы сможете принять объективное решение на основе некоторых релевантных данных ... или, по крайней мере, так я бы поступил: -)
Почему бы не провести по bash для каждого небольшого подмножества вашей проблемы и сравнить результаты с точки зрения времени разработки и времени выполнения? Тогда вы сможете принять объективное решение на основе некоторых релевантных данных ... или, по крайней мере, я бы так поступил: -)
Многие из них написаны на C или fortran. Вы можете переписать горячие циклы на C (или использовать один из бесчисленных способов ускорить работу Python, я предпочитаю boost / weave), но разве это имеет значение?
Ваше научное приложение будет запущено один раз. Остальное - это просто отладка и разработка, а на Python они могут быть намного быстрее.
Здесь есть лучшее сравнение (не тест, но показывает способы ускорения Python). NumPy в основном написан на C. Основное преимущество Python состоит в том, что существует несколько способов очень простого расширения вашего кода с помощью C (ctypes, swig, f2py) / C ++ (boost.python, weave. inline, weave.blitz) / Fortran (f2py) - или даже просто добавив аннотации типов в Python, чтобы их можно было обработать в C (cython). Я не думаю, что есть много вещей, сравнительно простых для C # или Java - по крайней мере, это так безобразно обрабатывает передачу числовых массивов разных типов (хотя я думаю, что сторонники будут возражать, поскольку у них нет потери производительности Python, меньше необходимости к).
Большая часть Numpy находится в C, но большая часть Code Code - «BoaterPlate» для обработки всех Грязные детали интерфейса Python / C. Я думаю, что соотношение C vs. Python составляет около 50/50 атм для Numpy.
Я не слишком знаком с деталями низкого уровня на основе VM, но я считаю, что стоимость интерфейса будет выше из-за ограничений, поставленных на JVM и .Clr. Одна из причин, по которой Numpy часто быстрее, чем аналогичные среды, - это представление памяти и как массивы совместно используются / передаются между функциями. Принимая во внимание, что большинство окружающей среды (Matlab и R как также считают) используют копирование в записи, чтобы пройти массивы между функциями, Numpy Use. Но делать это в Э.Г. JVM будет сложно (из-за ограничений о том, как использовать указатель и т. Д. ...). Это сделано (ранний порт Numpy для Jython существует), но я не знаю, как они решают этот вопрос. Возможно, C ++ / CLI сделает это проще, но у меня нулевой опыт с этой средой.