參加數學建模有沒有必要學python?

目前會用matlab編程,但是有人說python更好用,它們各自的優缺點有哪些?需不需要學Python呢?


單就參加數學建模比賽而言,沒有必要專門去學,投入產出比遠低於matlab。

不過,如果你要將來從事相關研究,則最好學習python。


如果只為了競賽,學習Python的代價要大於matlab,還不如專精。但是以後你要從事數據分析另說


個人覺得python的學習成本要比matlab的大,如果你熟悉matlab的使用,matlab對數學建模完全夠用。

1.python的開發環境配置對於小白來說還是蠻困難的,當初我剛接觸安裝numpy,matplotlib,pandas等這些庫,有一段比較酸爽配置過程,如果有老司機帶著玩的話這個過程會愉快一些。

2.matlab的幫助文檔是其最大亮點之一,幾乎可以說matlab的幫助文檔完爆python,matlab的幫助文檔可以說是業界標杆。內容翔實,排版精美。

3.matplotlib的繪圖不及matlab的簡潔,用matlplotlib要畫一幅好圖要用的代碼遠多於matlab,而且對這個庫不熟悉的話,一般畫出來的圖是比較丑的,但如果熟悉matplotliib的使用的話可以畫出比matlab的鋸齒風更加美觀的圖。

4.我覺得python各個庫的調用函數方式不如matlab的整齊統一,比如我總是記不住求A矩陣維數的函數用法是A.size()還是size(A)(也許是我對python使用時間不夠)

5 相對來說, matlab的數據結構比python更加簡單也更加直觀。例如matlab就不會有array與matrix的數據結構的區別,而且python中不同的庫的性質相似的不同數據結構是不能通用的。matlab矩陣的索引也很自然地從1開始。

6.我在使用過程中覺得matlab的向量化編程更加自然,雖然numpy也可以,但是感覺並沒有matlab寫得那麼自然愉快。

當然,python也有很多優點,比如:免費,有很多強大的庫,python在大數據的處理上還是有比較明顯的優勢,還有如果你學會了用python寫爬蟲的話,網路數據獲取會更加簡單。

暫時想到這麼多。


推薦閱讀:

如何快速地注釋Python代碼?
對於 Python 的科學計算有哪些提高運算速度的技巧?
基於 Python 的中文分詞方案那種比較好?
Python 多線程效率不高嗎?
Python 開發中有哪些高級技巧?

TAG:Python | 編程 | MATLAB | 數學建模 |