numpy二維數(shù)組拼接 29歲想學(xué)python,有哪些建議?
29歲想學(xué)python,有哪些建議?學(xué)習(xí)Python與年齡無關(guān)。去年,我33歲的時候在openstack上學(xué)習(xí)Python。在我的職業(yè)生涯中,我學(xué)過幾種語言,包括C、C、PHP和python。就學(xué)習(xí)內(nèi)
29歲想學(xué)python,有哪些建議?
學(xué)習(xí)Python與年齡無關(guān)。去年,我33歲的時候在openstack上學(xué)習(xí)Python。在我的職業(yè)生涯中,我學(xué)過幾種語言,包括C、C、PHP和python。
就學(xué)習(xí)內(nèi)容而言,我認(rèn)為學(xué)習(xí)一門語言主要包括兩個方面:
1)語言本身的語法,其實內(nèi)容很少
2)與語言相關(guān)的系統(tǒng)庫和第三方庫,內(nèi)容多,難度大
另外,我的經(jīng)驗是如何學(xué)好一門語言的實踐,實踐包括兩個方面:
1)閱讀更多的代碼,你可以看到更好的開源項目,如openstack或Django等。
2)編寫更多的代碼。如果你的工作中有項目,如果沒有,你可以寫一些小項目。例如,開發(fā)一個python版本的redis。
從哪本書開始學(xué)習(xí)Python比較好?
如果是基本的,我想找一個在線網(wǎng)站學(xué)習(xí)如何開始是可以的。如果你想系統(tǒng)地學(xué)習(xí),我建議從不同的方向?qū)W習(xí)會更有效率。例如下面三個,分別為安全域、數(shù)據(jù)分析、網(wǎng)絡(luò)爬蟲等。如果是游戲指導(dǎo)或機器學(xué)習(xí),找另一個。。
Python語言其實很慢,為什么機器學(xué)習(xí)這種快速算法步驟通常還是用呢?
對于那些使用了多種開發(fā)語言(Java、C#、nodejs、Erlang)然后轉(zhuǎn)用Python進(jìn)行機器學(xué)習(xí)的人,我想談?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中進(jìn)行計算。Numpy、panda、numba這些優(yōu)秀的開源庫可以非常方便高效地處理海量數(shù)據(jù),借助ZMQ、cell等還可以做分布式計算,gevent借助epoll系統(tǒng)IO優(yōu)化。因此,它不需要花費太多的精力就可以優(yōu)雅高效地完成海量數(shù)據(jù)處理和機器學(xué)習(xí)任務(wù)。這就是Python如此流行的原因。
好好想想。同樣的性能,代碼只有CPP或Java的三分之一或更少,不是很吸引人嗎?