透過解釋,Python是一種程式語言。最基本的實現是in(也稱為Python)中的實現,通常被稱為“ Python”。除了程式語言和編輯器外,Python還包含一個大型標準庫。該庫旨在用於一般程式設計,幷包含用於特殊內容,執行緒,網路,資料庫等的模組。
Matlab是一種商業數字計算設定和程式語言。Matlab的概念指的是完整的軟體包,包括IDE。官方庫沒有包含太多常規程式設計功能,但原因包括矩陣代數和用於資料處理和繪圖的大型庫。為了獲得額外的功能,Mathworks提供了工具包(但這需要您額外付費)。
要使用Python進行清晰的計算,您需要新的軟體包(例如Numpy,Scipy,Matplotlib)。此外,您將需要一個IDE。許多殖民者來自Linux背景,並使用Python外殼和閱讀器(例如vi或Emacs),但是從Matlab來的人們更喜歡功能豐富的IDE(我們包括在內)。有一些IDE是免費的,其中一些是免費的。現在,您瞭解了Python與MATLAB生態系統。
Matlab的問題
我們無疑使Matlab看起來很糟。我們成功地愛著Matlab!但是,我們認為Matlab有一些基本的缺陷。這些大多數來自其商業壽命。
這些演算法是專有的,這意味著您看不到正在執行的大多數演算法的程式碼,而必須相信它們已正確完成。
Matlab很高,這意味著Matlab上列印的程式碼只能由有足夠儲備購買許可證的人員來完成。
自然,Mathworks對程式碼的可移植性(即在其他人的計算機上驅動程式碼的能力)施加了限制。您可以在Matlab元件執行時(MCR)上執行“已編譯”應用程式,但是緊湊型應用程式需要與已安裝的MCR完全吻合,考慮到Matlab每6個月發行一個新帳戶,這可能是有害的。
排他性也使第三方難以/不可能改善Matlab的功能。
Python與MATLAB的優勢
Matlab的
當然,Matlab也有其優勢。
它具有大量功能。Simulink是目前尚無真正替代方案的結果。對於新手來說,這很容易,因為該盒子可以滿足您的所有需求,而在Python中,您需要放置額外的程式包和IDE。(專家提供的計算機科學作業和作業幫助 試圖解決這個問題。)Python
美麗的程式語言
Python被設計為一種易於閱讀的通用語言,而Matlab則作為矩陣處理案例而崛起,他們向其中添加了一種程式語言。隨著您對Python的逐漸熟悉,您會對它的強大功能感到驚訝。
強大的
因為它經過精心設計,所以比其他語言更容易將您的想法轉換為程式碼。此外,Python從廣泛的標準庫開始,並具有強大的資料型別,例如列表,集合和字典。這些肯定有助於製作資料。
名稱空間
Matlab為您編寫的目的提供了名稱空間幫助,但是Matlab的核心是名稱空間。每個角色都在全域性名稱空間中定義。Python與模組一起使用,如果要使用它們,則需要傳送這些模組。
在Python中,所有事物都是一個物件,因此每個物件本身都有一個名稱空間。這是Python如此擅長思考的原因之一。
內省
這就是Python的面向物件世界的結果。因為程式有一個乾淨的房子,所以很容易。
私有變數僅是法律規定的,因此您可以訪問應用程式的任何部分,包括Python的某些內部函式。
當然,在良好的程式設計習慣中,您不會使用其他地方的私有變數,但是它非常適合除錯!
字串操作
這在Python中非常容易。
我用Matlab編寫此程式碼,該程式碼返回右對齊的20個字元的行:.replace('Matlab','Python')。rjust(20)
可移植性
因為Python很容易,所以您的程式碼可以在任何地方執行。而且,它可以在Windows,Linux和OS X上執行。類和函式定義函式和類可以在任何地方指定。在一個檔案中,您可以根據需要設計儘可能多的函式和類。如果需要,甚至可以在命令外殼中指定一個。
出色的GUI工具包
使用Python,您可以為您的應用程式建立一個看起來高檔並且執行良好的前端。您可以選擇任何主要的GUI工具包,例如Wx或Qt。