歡迎光臨
每天分享高質量文章

撩妹、搶紅包、跳一跳刷分…萬能的Python,為什麼它才是最火的程式語言?

來自:51CTO官微(微訊號:weixin51cto)

*本文內容整理自網路,部分內容來源:菜鳥學python,小象學院,cleveroad,python教程等;

在過去的兩年間,Python一路高歌猛進,成功竄上“最火程式語言”的寶座。

更可怕的是,這把火不僅僅是在程式員的圈子裡越燒越旺,甚至還燒到了程式員的圈子外,從小學生到職場老司機,都在學習這樣一門語言。

下影片?我用Python;玩跳一跳?我用Python跳到4999分;撩妹子?我用Python發情書;搶紅包?沒錯還是Python;就算是數瓜子,我也還是用Python……

那麼,問題來了,Python憑什麼受到大家的追捧呢?難道真的只是因為它的低門檻與騷操作?Python到底是用了什麼招數懟翻其他程式語言的?


那就不得不提 Python 的 5 大優點。

1. 簡單:Python奉行簡潔主義,易於讀寫,它使你能夠專註於解決問題而不是去搞明白語言本身。

2. 免費:Python是開源軟體。這意味著你不用花一分錢便能複製、閱讀、改動它,這也是Python越來越優秀的原因——它是由一群希望看到一個更加優秀的Python的人創造並經常改進著的。


3. 相容性:Python相容眾多平臺,所以開發者不會遇到使用其他語言時常會遇到的困擾。


4. 面向物件:Python既支援面向過程,也支援面向物件程式設計。在面向過程程式設計中,程式員復用程式碼,在面向物件程式設計中,使用基於資料和函式的物件。


5. 豐富的庫:Python標準庫確實很龐大。它可以幫助你處理各種工作,包括正則運算式、檔案生成、單元測試、執行緒、資料庫、網頁瀏覽器、CGI、FTP、電子郵件、XML、XML-RPC、HTML、WAV檔案、密碼系統、GUI(圖形使用者介面)、Tk和其他與系統有關的操作。


什麼?看完這5點還沒什麼感覺?沒有對比就沒有優(shang)勢(hai),那麼我們就拿Python跟其他語言來個大PK!

Python vs Java


作為世界上使用範圍最廣的程式語言,Java難免總是被拿來跟Python比較,而且,在程式語言的各種對戰中,Python 與Java也是打得最熱烈的。


那到底是Python好還是Java好?

from Cleveroad


1. Java必須顯式宣告變數名,而動態型別的Python不需要宣告變數。


2. Python是一種語法簡單的功能強大的語言,能夠透過編寫指令碼就提供優秀的解決方案,並能夠快捷地部署在各個領域。


3. Java可以建立跨平臺的應用程式,而Python幾乎與當前所有作業系統相容。


4. 對初學者來說,Python比Java更容易上手,而且程式碼易讀性強。


Python vs PHP


from Cleveroad


1. 從開發的角度來看,PHP是面向web的語言,而Python是多用途語言,也可以用於web開發。


2. 雖然Python沒有PHP那麼多引以為豪的框架,但個情況很快會改變(目前最好用的是Django和Flask)。


3. 在簡單易學方面,Python繼續弔打PHP,想要完全掌握PHP需要花費較多的時間和精力。對於新手來說,如果想學一項更容易、更靈活的技術,那Python就是最佳選擇。


Python vs C#


from Cleveroad


1. Python原本就被設計成類似用英語表達一樣,所以語法簡單,沒有像句法括號和大量的修飾詞,易讀易學;而C#必須遵循一定的規則,伴隨著很多修飾詞,還得將程式碼段放在括號內。


2. 在編寫指令碼方面,Python的指令碼是真正的指令碼,能夠被直譯器執行,而且使用Python更容易編寫跨平臺的指令碼,甚至不需要重新編譯。


Python vs Ruby

from Cleveroad


1. Python和Ruby都是面向物件的語言,都是動態和靈活的。二者的主要區別在於他們解決問題的方式。Ruby提供了不同的方法,而Python通常只有一個,這既是優勢也劣勢。


2. 最流行的Ruby框架是Ruby-on-Rails,跟Python的Django極其相似且同等高效,不過,如果開發偏重於大量計算和資料處理的應用,還是優先Python。


3. Python在資料科學和數學方面很受歡迎,所以在這裡你可以找到很多的學者和教授。


Python的支持者是世界上規模最大和構成最多樣化的一個團隊,不僅有數以千計的個人開發人員,還有Google,Yandex,Dropbox,Mozilla,Microsoft(在Visual Studio中使用它),Intel等大公司,已經用Python建立了世界上最大的和最受歡迎的專案。



程式語言

優勢

劣勢

Python

簡單易學,能夠把用其他語言製作的各種模組很輕鬆地聯結在一起。

速度較慢,且有一些特定情況下才會出現(無法重現)的 bug

C/C++

C/C++ 可以被嵌入任何現代處理器中,幾乎所有作業系統都支援 C/C++,跨平臺性非常好

學習難度大,且擁有大量極為複雜的功能互動方式,容易造成資源浪費

Java

世界上使用範圍最廣的語言

Java 佔用大量記憶體,並且啟動時間較長

C#

全面整合.Net 庫,提供出色的功能與完美的庫訪問能力

跨平臺能力太差,且在國內就業環境不太好,收入較低

JavaScript

學習難度低,並且掌握了 JavaScript 語言就等於成為能同時開髮網頁、後臺、移動端的全棧工程師

過於依賴瀏覽器,且程式碼在使用者電腦上執行,容易被別有用心的壞人惡意利用

SQL

開發速度快,安全性好

SQL 開發速度是靠犧牲執行速度換來的,且可移植性極差

PHP

社群龐大而活躍,易於快速上手

執行速度慢,且錯誤處理機制比較糟糕,需要支援大量舊版本的功能

Objective-C

擁有豐富的工具和庫

擁有自己獨特的程式設計思路,與其他程式語言思路差別較大

Swift

Swift 在 iOS 和 OS X 軟體中佔的程式碼比例越來越多

版本更迭太快,不同版本差別過大

Kotlin

和 Java 的互操作性極佳

繼承了 Java 劣勢內容

說了這麼多,估計大家都知道“Python大法好”了,我們……


路人甲:等等,我還有一個疑問,我們真的有必要去學這個嗎?Python真的適合我嗎?


那麼咱們再來分析一下這些實實在在的優勢吧:


1. 從行業來說,網際網路行業屬於朝陽產業


各種各樣的新興技術層出不窮,在未來的二三十年仍然得靠網際網路人帶動整個行業的發展,甚至是帶動整個世界的進步。


2. 從實際來說,作為程式員,收入非常高


找工作的時候,一份原始碼和小專案的直接展示,要遠遠比枯燥的簡歷,說服力高得多。現在優秀的大學應屆生畢業生可以收到二三十萬的薪水,已經是很常見的。


資料顯示,2017年在僱主釋出的職位說明中,Python技能需求增速達到174%,居於首位。 



3. 從難易程度來說,Python入門非常簡單


很多程式語言的入門非常的困難,導致大家剛剛學習語法的時候,就已經喪失了一半的興趣。Python這門語言,在設計的時候,就類比了英語的語法設計,所以更符合人類大腦對語言的理解。


所以,如果你想在短期內掌握一門新語言,Python可能是一個很好的選擇。

最後的最後…


Python的擁護者讓我看到你們的雙手~其他流派的程式員讓我看到你們的拳頭~



●編號397,輸入編號直達本文

●輸入m獲取文章目錄

推薦↓↓↓

 

演演算法與資料結構

更多推薦18個技術類微信公眾號

涵蓋:程式人生、演演算法與資料結構、駭客技術與網路安全、大資料技術、前端開發、Java、Python、Web開發、安卓開發、iOS開發、C/C++、.NET、Linux、資料庫、運維等。

贊(0)

分享創造快樂