1. 程式人生 > >1.2 Why Python for Data Analysis(為什麼使用Python做資料分析)

1.2 Why Python for Data Analysis(為什麼使用Python做資料分析)

1.2 Why Python for Data Analysis?(為什麼使用Python做資料分析)

這節我就不進行過多介紹了,Python近幾年的發展勢頭是有目共睹的,尤其是在科學計算,資料處理,AI方面,否則大家也不會來看這本書了。

使用Python的一些優點

  1. Python是一門膠水語言,可以把不同語言整合起來,比如上層程式碼使用Python編寫,底層程式碼用C,C++等語言實現。
  2. 解決了兩種語言的問題。以前做研究用一門語言寫原型(比如R,SAS),效果好了才會用其他語言去重新實現一遍(比如Java,C#,C++),部署到實際任務中。而Python的優勢在於既適合做研究,又適合直接部署。

什麼情況下不使用Python

因為Python是解釋性程式設計語言(interpreted programming language),其執行速度比Java或C++慢。如果覺得慢一點沒關係,可以用Python,但如果現實場景中需要系統低延遲,使用效率高,還是使用C++這樣的語言比較好。

用Python編寫多執行緒應用(multithreaded applications)並不方便,因為Python有一個叫做全域性直譯器鎖(global interpreter lock (GIL))的機制,這個機制讓編譯器只能在一次執行一個Python指令。對於一些大資料量的處理,Python並不合適。

但並不是說Python不能執行多執行緒,並行程式碼。Python C擴充套件能使用本地多執行緒(通過C或C++)來並行執行程式碼,而不通過GIL機制,前提是不和Python object(物件)進行過多互動。