用于数学的Java还是Python?

Dha*_*dya 21 python java math stocks

我正在尝试编写一个非常重要的基于数学的项目,它将每天多次解析大约100MB +数据,所以,我需要一种非常容易使用的快速语言.我本可以使用C语言,但是,用C语言完成大型项目是非常困难的,尤其是低级编程阻碍了你.所以,我是关于python或java的.两者都配备了OO功能,所以我不介意.现在,这是我选择python的专业人士:

  • 非常好用的语言
  • 有一个非常大的有用的东西库
  • 有一个易于使用的绘图库

这是缺点:

  • 不完全是炽热的
  • 没有一个活跃的本机python神经网络库
  • 我不能在不经常遇到麻烦的情况下关闭我的代码
  • 在客户端计算机上部署python代码很难处理,尤其是当客户端是白痴时.

以下是选择Java的优点:

  • 巨大的图书馆
  • 很好的支持
  • 易于部署
  • 非常快,甚至可能与C++相当
  • Encog神经网络库非常活跃,非常棒
  • 网络支持非常好
  • 强打字

以下是Java的缺点:

  • 我找不到像pyp的matplotlib这样的好的图形库
  • 没有内置支持大整数,这意味着另一个依赖(我的意思是真正的大整数,而不仅仅是math.BigInteger大小)
  • 与Python相比,文件IO有点尴尬
  • 没有大量的数组操作或"使编程简单"类型的功能python具有.

所以,我希望你们能告诉我要用什么.我同样熟悉这两种语言.此外,对其他语言的建议也很棒.

编辑:哇!你们快!10个回复30分钟!

dar*_*ioo 19

Java通常会更快运行(不要将其视为绝对真理),但写入速度较慢.

Python恰恰相反.由于SciPyNumPy之类的库已经存在,它们建立在快速的C代码之上,如果您希望在代码编写方面采用"更快"的方式,我建议使用Python.除非您的应用程序的基本块在SciPy + NumPy中缺失,否则存在Java.


mik*_*era 11

为什么不通过在JVM上利用多种语言来充分利用这两个世界:

  • 用Java编写性能密集型部分(或使用现有的优秀Java库)
  • 使用Jython在Python中编写用户界面/应用程序,并在需要时调用Java代码


Exe*_*ian 3

NumPy通常会极大地增强 Python 的计算能力。它是 Python 中任何实数运算的事实上的标准。我在这个领域没有任何关于Java的实际经验,所以我没有资格为你回答这个问题。