不会被淘汰,但MATLAB市场会被挤压得很惨。
如果不是因为很多新入行的年轻人都在用Python,为了交流学习,我都不太想用Python。我至今都觉得SciPy体系只是个“乞丐版“的MATLAB。
Python和他的伙伴们(SciPy,NumPy,SymPy,Matplotlib这些)能战胜MATLAB全靠开源免费吸引战略人才加入。就一般使用者来说,Python比MATLAB没啥显著优势,反倒是很高的学习成本,手上要解决的问题先得放下几个月,得先学Python和各个library。
SciPy,NumPy,SymPy这些library,用过的同学都知道,那个documentation的水平差MATLAB太远了,MATLAB的documentation不但是MATLAB的教材,还可以当很多科学学课的教材用。
你们可以去翻下Scipy和NumPy的documentation,简直是云里雾里,经常都是说到一半就没了,你还期望看个例子,也没有,不停要在google上搜。搜着搜着,我有时候就忘了手里要解决什么问题了。
SymPy是个超级强大的library,大家都低估它了,以为它只会搞搞符号运算,推个公式这些。我不知道是我水平不行还是,那个domentation里找啥没啥,我经常找不到需要的method或者function,只能翻开源码里面的docstring来找答案。
而且几个library里经常有些重叠的内容,连方程名字都一样(这就是用python必须要防止name contamination的原因),比如你要算一个矩阵的特征值/向量,SciPy,NumPy,SymPy都能做,但是你需要什么样子的结果?需要复数吗?需要normalized的特征向量吗?需要用什么算法?你要分别翻开三个包网站分别去查,而且还经常查不到,还是只能去翻源码。
MATLAB就是一站式解决,不同toolbox的documentation相互有参考链接。
即便是这样,在目前来看,我用Python的时间已经超过MATLAB了。因为时代在变,MATLAB的黄金年代已经过了,大家都要进步。