23歲的Python,這些年在程式語言排行榜上直線上升的原因是什麼?很多人都不解

程式設計師啟航發表於2019-07-15

python這些年在程式語言排行榜上名次一直在上升,這個並不是偶然。python發展了幾十年,中間好長一段時間無人問津,現在已經發展很成熟了,像新的語言go很多需要的包都沒有,而python上各種包很多,使用者開發不可能自己慢慢寫包,直接呼叫包,快得多,有立杆見影的效果。

23歲的Python,這些年在程式語言排行榜上直線上升的原因是什麼?很多人都不解

二、python可以工作的領域很多,一開始只是在linux上代替指令碼使用,後來發現python可以做資料分析,後來又有人搞了web開發包,pyqt桌面開發包,資料庫驅動,再後來發展出了人工智慧,深度學習,gpu加速,這樣python可以應用的範圍就很廣了,特別在伺服器上,不像客戶端那樣需要安裝,很多linux都內建了python。這樣在伺服器上python可以作用很大,效能不夠時,可以用顯示卡等加速措施。

三、python是開源,像java,c#主要用於商業軟體開發,大家都看不到其他人開發的原始碼,開發文件更是沒有,而python天生就是開源執行程式碼,可按需修改,這樣大家一共享,在市場上有n多包可以使用,形成了開源包文化,大家相互受益。這樣學習時,可以呼叫大量的成熟的開源包,對開發就省事了很多,開源文化的共享,為python快速發展提供了基礎。

四、python在工人智慧領域,特別方便,很多開源的人工智慧框架,都優先使用python,人工智慧的學習成本很高,python剛好可以簡化程式設計,像你學習用c++開發tensorflow會特別累,而用python的keras來開發tensorflow程式寫得程式碼量很少,在初學級段,這很重要,必竟人工智慧這幾年才開始發展,發展速度很快,很多人需要學習這方面的入門技術。

五、歐美學習python歷史悠久,以前中國把qbasic(vb),這類語言做為計算機考級語言,這完全是害了大家,如果當年你學python,基於python的開源原因,基本上可以用一輩子,而qbasic,vb這種商業語言微軟都打算放棄了。這樣國家為了未來著想,也讓人們學習python,而c語言太複雜,學會了基本語言,還需要學習計算機原理和作業系統知識,學習週期太長了,不適合做為大面積普及的程式語言。

六、python簡學難精,入門容易精通難,程式語言都是這樣,這樣低手需要學習,高手也需要學習,大家都學,導致比較容易受到關注,如低手學基本語法,高手學機器學習,領域演算法,可以學習的部分很多,這個語言的有很深的行業積累。python適合開發程式碼量並不大的程式,像工程化應用,功能複雜模組多,建議用java這種帶靜態檢查的程式,很多程式碼問題能第一時間發展,通過模組化開發,可以隔離複雜度在整個系統中不擴散,如果用python組成團隊開發大規模程式,像java那樣,也是需要學習大量軟體工程,計算機程式設計領域的各種技巧,實現分層,分模組,按協議標準開發。

七、python是很多領域的嵌入語言,如maya的指令碼就是開源的,你做動畫,可以用指令碼來做很多工作,python可以方便植入到其他系統中,可以通過呼叫c/c++編譯的動態連結庫,來實現各種呼叫,也可以使用訊息佇列、通訊、資料庫等方法,很方便地和其他系統互動,如python可以和java一道工作在linux伺服器上,這樣需要學習的需求量增長了很多。

八、python執行速度是要慢一些,但現在的計算機效能過剩,執行常規程式你幾時看到你的cpu跑滿過(如果你的cpu經常跑滿,趕緊看看是不是中毒或被挖礦了),執行python基本上不會有效能問題,就算有效能問題一般也是卡在io輸入輸出的速度上,也有的是演算法本身設計的有問題,如果做計算密集型程式,可以使用gpu加速來實現,像深度學習的卷積神經網路,就是用的gpu加速來實現,這樣python的速度就能提升上來了,你用c++幸苦寫個演算法,可能還沒有python開啟個gpu加速快,如果一個gpu不行,還有分散式叢集gpu,這個是很多語言也很難實現的,用c++也可以實現,但是c++的開發成本特別高,根本不划算。

九、很超級實用的python包,導致了python的繁榮,python中像opencv的呼叫非常簡單,像訊號處理演算法的呼叫類似matlab,而買個matlab很貴,像網際網路公司,資料處理是在伺服器,伺服器都是開源linux的不要交版權費,python可以很方便地執行自動化運維工具,很多公司的雲端計算背後的膠水語言用的就是python。很多科學家,用python研究科學,如引力波程式就是python寫的,像分析基因的很多程式也是python寫的,這些科學家寫程式主要是解決業務領域的問題,對計算機的原理並不想了解太多,而python的開箱即用,剛好滿足他們的需求,發展出了科學分析,科學計算大量的包。

十、python語言以前是學校不教的,現在是開始全民學習python。由於科技發展的重要性與連續性,國家為了發展移動網際網路,大資料,人工智慧產業,在小學都編寫了教材,實現人人程式設計,學習程式設計,這樣可以更加深刻理解電腦,包括移動網際網路的各個方面的技術也是基於電腦技術,未來各個產業需要資訊化,網路化,對計算機的知識只會越來越高。而教育大眾,python的簡單入門就是很大優點,小孩子都能入門學習。如果你學會了程式設計,很多電腦知識學起來了就很容易了,根本不需要記憶具體內容,因為程式設計出來的軟體都差不多,你看程式設計高手的計算機知識肯定比常人要高,這樣對資訊化的理解也是高於常人的。

十一、python不需要智慧財產權費,是開放原始碼的,美國現在開始對中國封鎖科技,中國未來只有依靠開源軟體才能突破重圍,開源軟體不屬於某個國家,雖然開發人員可能某個國家佔多數,但別人完全可以再換個名稱來繼續使用,如果你用封源軟體,那天美國一封鎖,你可能連安全補丁都打不了,像俄羅斯在gov,安全部門都是使用自己的作業系統,自己的cpu,這樣美國一點辦法都沒有,安全性也大大加強,他們的作業系統是linux開源的修改版,這個原始碼是人人都可以修改的,軟體一旦開源了,原始碼複製就非常簡單,雖然在美國有軟體專利一說,但在中國並沒有軟體專利相關申請,很多軟體專利在國內並不認可,國內申請軟體專利都是附帶硬體申請的,未來儘量使用開源軟體,就能避開這些陷阱,可能你那天成立個商業公司,有點規模(這些公司的名言是,羊要養肥了再宰),你使用商業軟體可能別人就要找上門來問你要授權費(國內已經有很多家公司收到過這樣的律師涵或電話摧要),這個可能是個定時/ 炸[彈 ,有的小公司就是這樣倒閉的,便宜的軟體每套要好幾千上萬,高階軟體授權可能達到幾百萬上千萬,很多公司利潤很低根本沒有這麼多除錢來交這些,像國內網際網路公司,他們都知道這些陷阱,所以清一色使用linux,全面使用開源軟體,這樣商業化使用能省下很多錢,省錢實際就是掙錢。如果全面使用開源軟體,那麼整個經濟每年就要少交很多授權費,就能減少了整個經濟執行的摩擦力,對個人可以促進就業,對公司有利於降低成本。

大家在學python的時候肯定會遇到很多難題,以及對於新技術的追求,這裡推薦一下我們的Python學習扣qun:784758214,這裡是python學習者聚集地!!同時,自己是一名高階python開發工程師,從基礎的python指令碼到web開發、爬蟲、django、資料探勘等,零基礎到專案實戰的資料都有整理。送給每一位python的小夥伴!每日分享一些學習的方法。和需要注意的小細節

點選: python技術分享交流


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69913713/viewspace-2650583/,如需轉載,請註明出處,否則將追究法律責任。

相關文章