头条上python广告_满大街都是Python广告,真的如广告说的那样方便吗?,学精通后真能月如过万吗?业内大佬怎么看?...
在編程領(lǐng)域。Python語言已經(jīng)被吹得神乎其神。很多人已經(jīng)產(chǎn)生了一種錯覺:仿佛當(dāng)今編程世界,唯Python莫屬,其它語言皆為渣渣。
就連地產(chǎn)大佬潘石屹也發(fā)微博為Python背書,不愧兩者都姓“潘”。媒體也經(jīng)常爆料小學(xué)生學(xué)Python的例子,搞的再不學(xué)Python就被世界OUT了一樣。
一、Python為什么這么火?
Python這門語言其實(shí)1982年就已經(jīng)誕生了。誕生的初衷就是成為一種功能全面,易學(xué)易用,可拓展的語言。之所以到現(xiàn)在才火起來。其實(shí)也是時代所造就的。
編程語言的發(fā)展經(jīng)歷了幾個時代:機(jī)器碼時代。匯編語言時代,面向過程的語言時代、面向?qū)ο蟮恼Z言時代
在機(jī)器碼和匯編語言時代,要想寫出一個程序,需要用0和1給計算機(jī)下達(dá)命令,或者語言掌握復(fù)雜的匯編指令,還需要學(xué)習(xí)計算機(jī)的底層原理,甚至那時候計算機(jī)的內(nèi)存都是以kb為單位的,一個大的數(shù)組就能占滿內(nèi)存,編程的時候還需要考慮內(nèi)存的溢出這些問題。這種方式編程效率低,而且費(fèi)腦子,所以那個時候的程序員是一個非常專業(yè)的工種,門檻極高。
隨著計算機(jī)硬件性能的提升,出現(xiàn)了以C語言為代表的面向過程語言。C語言可以用編程語句編寫程序,在編譯執(zhí)行時再由編譯器轉(zhuǎn)為匯編語言給計算機(jī)執(zhí)行。這樣更符合人的思考邏輯,而且免去了記憶大量匯編語句的煩惱。
但是C語言這種面向過程的編程語言就算一個最簡單的排序算法都要自己親手實(shí)現(xiàn)。而隨著計算機(jī)科學(xué)發(fā)展的成熟,出現(xiàn)了java等面向?qū)ο蟮恼Z言,將常用的算法封裝,用的時候直接調(diào)用,讓編程大大簡化。我們現(xiàn)在用的很多大型程序的后臺就是用java寫的。但是,java因?yàn)樾枰紤]系統(tǒng)的安全性和效率,對程序員還是做了不少的規(guī)范,雖然相對于匯編和C語言已經(jīng)大大提高了寫代碼的效率,但是依然加上了很多限制。
但python不一樣,他出現(xiàn)的初衷就是快速實(shí)現(xiàn)各種功能,是最放飛自我的語言。再加上設(shè)計了很好的包的調(diào)用機(jī)制。可以說在寫程序的過程中怎么簡單怎么來。所以能夠快速實(shí)現(xiàn)自己的想法,再加上包管理機(jī)制做的非常好,可以隨時從網(wǎng)上下載開源的Python包來復(fù)用他人的能力。
犧牲程序運(yùn)行效率換區(qū)編程效率為什么現(xiàn)在會有市場呢?一是計算機(jī)性能越來越高,大多數(shù)人普通的小程序還沒有到榨干計算機(jī)性能的時候,二是新一波人工智能潮來臨,人工智能需要快速調(diào)參驗(yàn)證。就像做數(shù)學(xué)題之前需要打草稿一樣,大家需要一門可以快速實(shí)現(xiàn)自己算法思路的草稿,再敏捷調(diào)整,Python完美地符合了這些要求。三是各路大神們迅速基于python開發(fā)了成熟的機(jī)器學(xué)習(xí)包供大家調(diào)用,迅速構(gòu)建了整個生態(tài)。基于以上,python的流行也是大勢所趨。
二、Python真的有這么神嗎?
Python雖然簡單易用、功能強(qiáng)大,但確實(shí)被捧得太高了,它和其他編程語言一樣,本質(zhì)上就是一個工具。工具的意思是:你可以用它來更好地放大你的能力,而不是有了這個工具你就擁有了相應(yīng)的能力。同樣的一根筆,畢加索拿在手里就可以畫出世界名畫,而你拿在手里可能就只能歪歪扭扭寫幾個字;同樣的一架鋼琴,放在貝多芬面前可以彈奏出世界名曲,放在你面前只能彈彈棉花。
這個工具的特點(diǎn)有兩個:
1、相對其他語言來說編程時沒有那么多的限制,所以入門比較容易,是非專業(yè)人士與計算機(jī)交流最便捷的方式。
2、幾乎各個領(lǐng)域都有現(xiàn)成的包,可以快速復(fù)用他人代碼。
然而缺點(diǎn)也很明顯:正因?yàn)閷τ诰帉懭藛T比較友好,計算機(jī)就要花更多的算力去解析、編譯程序,所以運(yùn)行效率注定不會太高。
既然是工具,就是為了解決問題而服務(wù)的,如果你工作生活中并不能用到它,那他對你來說就沒什么用,沒必要浪費(fèi)時間去學(xué),非要讓游泳冠軍去練長跑那不就是在浪費(fèi)時間嗎?
三、Python能用來干什么?
目前來說,Python的主要用途有以下幾個:
1、機(jī)器學(xué)習(xí)/深度學(xué)習(xí)。前面已經(jīng)說過,這也是Python的主要應(yīng)用領(lǐng)域,值得一提的是,Python更像是對模型打草稿的工具,很多工業(yè)界需要落地的機(jī)器學(xué)習(xí)模型,還是需要用c++或者java重新實(shí)現(xiàn)一遍的。而且雖然Python是人工智能的必備語言,但是絕不是把大量精力投入到這門語言的學(xué)習(xí)。機(jī)器學(xué)習(xí)的基礎(chǔ)知識才是你未來最核心的競爭力。
2、爬蟲。現(xiàn)在Python已經(jīng)封裝好了非常完善的爬蟲包,只需要調(diào)用這些函數(shù)就可以了,所以這條技術(shù)路線的天花板也是顯而易見的。Python爬蟲只是幫助你更方便地從互聯(lián)網(wǎng)獲取數(shù)據(jù),有了爬下來的數(shù)據(jù)之后,他們有什么意義,是否能夠產(chǎn)生業(yè)務(wù)價值才是一個公司真正關(guān)心的事情。所以這條路最終的歸屬還是要轉(zhuǎn)到數(shù)據(jù)分析或者機(jī)器學(xué)習(xí)。
3、后端開發(fā)。國內(nèi)大一點(diǎn)的互聯(lián)網(wǎng)企業(yè),只有知乎和豆瓣兩個后端完全用Python開發(fā)的。其他大廠大多數(shù)都是用Java來開發(fā)后端的,最多是嵌入一些Python的腳本來輔助。所以市場上招聘Python開發(fā)程序員的崗位并沒有Java程序員多,再加上目前學(xué)的人還多,所以Python后端開發(fā)程序員找工作難度遠(yuǎn)遠(yuǎn)大于Java后端程序員。
4、軟件測試。簡單來說就是程序員開發(fā)好程序,你來通過不同角度檢查程序有沒有毛病。因?yàn)镻ython可以模擬人鼠標(biāo)鍵盤的各種操作,而且也可以快速生成隨機(jī)數(shù)據(jù),所以是極好的自動化測試工具。不過這個工作難度也不是很高,天花板較低。
5、編寫自動化腳本。這個方面涉及的東西就很多了,如果Python應(yīng)用得當(dāng),會顯著提高你的工作效率。比如自動化處理excel報表(相當(dāng)于實(shí)現(xiàn)很多excel的函數(shù)功能,但是比excel函數(shù)更靈活)、開發(fā)一些有趣的小程序、小插件等。知乎上搜索“Python可以用來干什么”,往往會看到各路大神給出的各種小應(yīng)用。但是這方面的應(yīng)用一般給公司產(chǎn)出不了很多明顯的價值,更多是極客們的自娛自樂,企業(yè)級項目還是用java用得居多。
四、是否需要學(xué)習(xí)Python
明確了這個工具能做什么,是否需要學(xué)習(xí)Python,也許你心里已經(jīng)有了答案:
如果你有數(shù)學(xué)/統(tǒng)計學(xué)或者其他工科背景。沒有編程經(jīng)驗(yàn),而又有意向進(jìn)入人工智能領(lǐng)域,那么學(xué)Pyhon來放大你的數(shù)學(xué)能力是完全沒有問題的。
如果你是個需要經(jīng)常處理excel的表哥表姐,而且有些需求用excel的函數(shù)還沒有辦法實(shí)現(xiàn),可以考慮用Python提高你的數(shù)據(jù)處理效率。
如果你是個非常有創(chuàng)意的人,借助于Python的力量,你可以將自己的創(chuàng)意變成程序在計算機(jī)上實(shí)現(xiàn),放在市場上看看,運(yùn)氣好了,說不定就誕生個價值千萬的項目呢。
如果你是剛進(jìn)入計算機(jī)專業(yè)的學(xué)生,還是建議主要學(xué)java(當(dāng)然也可以先用Python來入門),一方面,精通java之后,python順帶就學(xué)會了。另一方面,要想真正成為一名合格的程序員,還需要學(xué)算法,數(shù)據(jù)結(jié)構(gòu),計算機(jī)系統(tǒng)等知識,很多相關(guān)領(lǐng)域經(jīng)典書籍都是用java或者c寫的,用相同的語言便于照著書上自己實(shí)踐。先打好基礎(chǔ),以后轉(zhuǎn)型機(jī)器學(xué)習(xí)也會方便很多。
如果你已經(jīng)是一名專業(yè)的后端開發(fā)程序員,而且也沒有隨大流轉(zhuǎn)行人工智能領(lǐng)域的意思,只需要在空閑時間去看看Python的特性,說不定對自己的開發(fā)有所幫助。
如果你特別好奇編程這個神奇的世界。或者是python這門神奇的語言,也可以沒事的時候去學(xué)習(xí)一下,說不定會開拓一個神奇的世界。
如果你沒有以上這些需求,就算python吹得再神,對你也是沒有用的。即使它是把屠龍寶刀,你拿著他去切菜也完全不如找一把普通的菜刀好使。
最后,編程語言只是一門工具,它不代表你的能力,只代表你選擇的方向,而方向的選擇恰恰并沒有絕對的對和錯。
超強(qiáng)干貨來襲 云風(fēng)專訪:近40年碼齡,通宵達(dá)旦的技術(shù)人生總結(jié)
以上是生活随笔為你收集整理的头条上python广告_满大街都是Python广告,真的如广告说的那样方便吗?,学精通后真能月如过万吗?业内大佬怎么看?...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android 禁用dlsym_Andr
- 下一篇: python支持list类型吗_Pyth