python執(zhí)行效率有多低 Python語言其實很慢,為什么機器學習這種快速算法步驟通常還是用呢?
Python語言其實很慢,為什么機器學習這種快速算法步驟通常還是用呢?對于那些使用了多種開發(fā)語言(Java、C#、nodejs、Erlang)然后轉(zhuǎn)到Python進行機器學習的人,我想談?wù)勎业目捶?。?/p>
Python語言其實很慢,為什么機器學習這種快速算法步驟通常還是用呢?
對于那些使用了多種開發(fā)語言(Java、C#、nodejs、Erlang)然后轉(zhuǎn)到Python進行機器學習的人,我想談?wù)勎业目捶ā?/p>
首先,Python真的很慢嗎?我的回答是真的。非常慢。for循環(huán)比CPP慢兩個數(shù)量級。
那么為什么要使用Python呢?如果我們遍歷超過一億個數(shù)據(jù),兩個數(shù)量級的差異是不可接受的。但是,如果我們使用Python來執(zhí)行頂層邏輯并阻塞數(shù)以億計的數(shù)據(jù),Python只會循環(huán)十幾次,剩下的就留給CPU和GPU了。所以兩個數(shù)量級無關(guān)緊要?一毫秒和100毫秒在整個系統(tǒng)中并不重要。
Python最大的優(yōu)點是它可以非常優(yōu)雅地將數(shù)據(jù)拋出到高效的C、CUDA中進行計算。Numpy、panda、numba這些優(yōu)秀的開源庫可以非常方便高效地處理海量數(shù)據(jù),借助ZMQ、cell等還可以做分布式計算,gevent借助epoll系統(tǒng)IO優(yōu)化。因此,它不需要花費太多的精力就可以優(yōu)雅高效地完成海量數(shù)據(jù)處理和機器學習任務(wù)。這就是Python如此流行的原因。
好好想想。同樣的性能,代碼只有CPP或Java的三分之一或更少,不是很吸引人嗎?
Python對普通人有什么實際用處?
python有意思嗎?
個人來說,這很有趣。
我用scrapy編寫了一個非常簡單的爬蟲程序,獲得了40000多輪演習的數(shù)據(jù)。然后我用numpy和pandans做了一個凌亂的分析,matlibpol t經(jīng)過可視化,似乎可以嚇唬一些人,哈哈;現(xiàn)在我發(fā)現(xiàn)爬蟲很有意思。嘻嘻,如果你有興趣的話,可以到我的主頁看看,但是門戶網(wǎng)站不會給你。就在標題之后,這是文章。
但是我覺得學習之后,我認為更好的學習方式是系統(tǒng)地申請課程,因為自學之后,我覺得這是浪費時間,我沒有系統(tǒng)地尋找基本信息。后來,我比較了幾所院校,最后選擇了上學堂,因為這里的老師比其他院校更負責任。最后,我選擇了上學堂。
Python和Java,你覺得哪個是最好的語言呢?為什么?
讓我們先看兩張圖片:
2015年5月編程語言排名
2020年4月編程語言排名https://www.tiobe.com/tiobe-index
以上數(shù)字是本網(wǎng)站的統(tǒng)計數(shù)據(jù)??梢钥吹?,Java是近年來最好的,python發(fā)展很快,但與Java相比還有一定的差距。
不得不說,爪哇第一的位置比較穩(wěn)定,老大哥的位置沒有動搖。Java如此流行的原因之一是市場需求?,F(xiàn)在市場上的大多數(shù)移動應(yīng)用程序都是由Java開發(fā)的。支付寶、支付寶、淘寶、京東等都在用Java做后臺。如此眾多的互聯(lián)網(wǎng)公司如此青睞Java,這將推動Java生態(tài)變得越來越好。畢竟,有大公司支持它。生態(tài)越好,與Java相關(guān)的學習材料就越多,學習Java的人就越多。最重要的是Java的薪水也很不錯。這是如此循環(huán),你不能沒有火。
說了這么多,Java這么流行,它能算是一門好語言嗎?事實上,不同領(lǐng)域的不同語言有各自的優(yōu)勢。我不在乎。關(guān)鍵是你喜歡它,它能幫你解決問題,給你帶來好處。只要能滿足你的需要,解決你的問題,你就可以說誰是好人。
最后,我想說的是,語言只是一種工具,最重要的是一個人的思維
!如果我的回答對你有幫助,請記得表揚我。謝謝您!