Java还是Python用于数学?[已关闭]

2022-09-02 03:29:01

我正在尝试编写一个非常繁重的基于数学的项目,该项目每天将解析大约100MB +数据几次,因此,我需要一种非常易于使用的快速语言。我本来会选择C,但是,用C完成一个大型项目是非常困难的,特别是低级编程阻碍了你。所以,我是关于python或java的。两者都配备了OO功能,所以我不介意。现在,以下是我选择python的优点:

  • 非常容易使用的语言
  • 有一个相当大的有用的东西库
  • 具有易于使用的绘图库

缺点如下:

  • 不完全是炽热的
  • 没有处于活动状态的本机python神经网络库
  • 我无法在不遇到很多麻烦的情况下关闭我的代码源代码
  • 在客户端计算机上部署python代码很难处理,特别是当客户端是白痴时。

以下是选择Java的优点:

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

以下是Java的缺点:

  • 我找不到一个好的图形库,如python的matplotlib
  • 没有对大整数的内置支持,这意味着另一个依赖关系(我的意思是真正的大整数,而不仅仅是数学。大整数大小)
  • 与Python相比,文件IO有点尴尬
  • 不是python具有的大量数组操作或“使编程变得容易”类型的功能。

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

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


答案 1

Java通常运行得更快(不要把这当作绝对的事实),但写起来会更慢。

Python恰恰相反。由于像SciPyNumPy这样的库已经存在,它们是建立在快速C代码之上的,如果你更喜欢在代码编写方面走“更快”的方式,我建议使用Python。除非在 SciPy + NumPy 中缺少应用程序的基本块,并且 Java 中存在这些块。


答案 2

为什么不通过利用JVM上的多种语言来获得两全其美:

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