時間:2021-12-15 16:45:10
【摘要】 華爲名師揭秘編程界“網紅”Python
一(yī)提到計算機程序員(yuán),大(dà)部分(fēn)人的印象可能是修電(diàn)腦的
或者敲代碼的
或者會盜号的黑客
總之,要麽是什麽電(diàn)腦都會修的電(diàn)腦維修店(diàn)師傅,要麽就是能盜号,會破解程序的大(dà)神黑客,其實這都是對我(wǒ)們程序員(yuán)的一(yī)種誤解
百度百科的解釋:程序員(yuán)(英文Programmer)是從事程序開(kāi)發、程序維護的基層工(gōng)作人員(yuán)。一(yī)般将程序員(yuán)分(fēn)爲程序設計人員(yuán)和程序編碼人員(yuán),但兩者的界限并不非常清楚。
首先關于修電(diàn)腦這個問題,作爲計算機專業的程序員(yuán),在專業知(zhī)識中(zhōng)除了學習軟件,硬件開(kāi)發外(wài),當然也要了解一(yī)些計算機構造的基本知(zhī)識,當然程序員(yuán)可以會修電(diàn)腦,但不是必須要求。修電(diàn)腦和編程沒有直接關系。
當然程序員(yuán)也不一(yī)定要敲代碼
舉個例子:你會開(kāi)車(chē)不代表不會修車(chē)或者造車(chē),你會寫文章不代表你會造字。
計算機專業是個很寬泛的專業,可以具體(tǐ)細分(fēn)到很多類别。
計算機主要可以分(fēn)爲==軟件方向==(軟件工(gōng)程)和==硬件方向==(計算機科學與技術),軟件工(gōng)程和計算機科學與技術又(yòu)可以接着細分(fēn)。現在的人工(gōng)智能也比較火(huǒ)。
在1.2中(zhōng)我(wǒ)們已經介紹了程序員(yuán)有很多不同的分(fēn)類,計算機編程語言也有很多種,我(wǒ)們主要根據使用的編程語言對程序員(yuán)進行分(fēn)類。
現在主流的高級編程語言主要有下(xià)面幾種
0、Python
Python被稱爲膠水語言,哪裏都可以用。
有句話(huà)說:人生(shēng)苦短,我(wǒ)用Python。
有程序員(yuán)網友調侃,python最适合女生(shēng)學……因爲包多!
python有很多方便的庫,丢棄c語言複雜(zá)的指針,簡化語法,它的存在就是解決問題,而不是讓你理解語言本身。
1、C
C語言是通用的基礎編程語言,編程開(kāi)發人員(yuán)加班加點必備武器。
它的特點在于偏向計算機底層操作,多用于性能要求嚴格的領域。
C語言相對來說會難點,光一(yī)個指針就足以把你搞暈。入門一(yī)般都是啃着譚浩強的C程序設計。
在硬件、虛拟現實VR/AR,C語言和C++占據主導地位。
2、C++
C++以C發展而來,它比C語言多增加了類、繼承、重載、類模闆、C++标準庫、模闆庫等。
一(yī)句話(huà),C面向過程,C++面向對象。
3、Java
Java可能是目前運用最廣的項目語言。
它的特點是,概念簡單,無數的庫,輕松入門so easy!
可應用于服務端編程、高性能網絡程序、分(fēn)布式計算、安卓移動終端應用開(kāi)發等。
4、PHP
PHP被程序員(yuán)網友稱爲是世界上最好的語言,但是可能也是被黑的最慘的一(yī)門語言。
PHP語法和C類似,有很多的模闆和框架,簡單易懂,也許你可以在短短幾天做出web app。
它主要用于web端,快速建站網絡開(kāi)發必備。
5、JS
JS是JS是目前所有主流浏覽器上唯一(yī)支持的腳本語言,僅用10天的時間設計出來。
在前端開(kāi)發中(zhōng),占有不可替代的地位。
當然這些語言不是說隻能做某些東西,隻是說他們各有所長
下(xià)面主要介紹本文的主角Python
python發展曆程
1991年,第一(yī)個正式版解釋器誕生(shēng)(c語言實現)
2000年,Python2。
2008年,Python3。
2021年,Python3.9.x
截止到2021年5月4日,根據python官方網站(https://www.python.org/)消息,Python3.10已經發布。
Python是目前非常流行的一(yī)種編程語言,但它并不是一(yī)種新語言,三十年前就已經開(kāi)發出來(1991年)。
可以看到python進行了兩個重大(dà)的更新,也就是Python2到Python3的更新,如果按照大(dà)家的正常思維來想,應該python2到python3是向下(xià)兼容的,在python2開(kāi)發的軟件在python3版本也可以運行。實際上python2和python3
是兩個完全不相同的版本,并不互相兼容,所以在進行python開(kāi)發時,一(yī)定要注意版本選擇。
大(dà)部分(fēn)情況下(xià)我(wǒ)們使用的都是Python3.X版本,但Python的版本并不是越高越好,不建議使用最新發布的版本,可能會存在一(yī)下(xià)BUG和漏洞,目前比較穩定的版本爲Python3.7
Python在發布之初還隻是一(yī)個小(xiǎo)衆語言,當時(指上個世紀九十年代)的流行語言主要還是C語言。但是在2021年5月發布的最新==編程語言排名表==可以發現Python的熱度已經到達第2名,僅次于編程語言鼻祖C語言,而且還在處于上升趨勢。
上圖編程語言排名圖來自網頁 https://tiobe.com/tiobe-index/
上圖編程語言排名圖來自網頁 https://tiobe.com/tiobe-index/
上圖爲2001年1月-2021年5月主流編程語言排名占比可以看出在2018年後,python語言的上升趨勢很明顯主要原因有:
部分(fēn)國内外(wài)中(zhōng)小(xiǎo)學已經把python列爲學習科目
少兒編程培訓機構對python的宣傳
人工(gōng)智能的發展火(huǒ)熱
不難看出,既然可以在中(zhōng)小(xiǎo)學生(shēng)中(zhōng)推廣,必然說明Python相對其他編程語言來說十分(fēn)簡單,也很有潛力
上圖編程語言排名圖來自網頁 https://tiobe.com/tiobe-index/
上圖爲近十年每年評選出的明星語言,可以看到在2018和2020年python均爲明星語言,表現已經和C語言不分(fēn)伯仲
目前使用python語言的主要知(zhī)名公司有
Google:==python==,java和c是其主要三大(dà)開(kāi)發語言
NASA:使用python進行數據分(fēn)析運算
豆瓣,知(zhī)乎
Dropbox:使用python處理十億級别數據
YouTube:用python構建網站
動态,解釋性語言
在python使用數據時,無需提前定義,可提前執行腳本
開(kāi)源,跨平台
python支持linux,mac,window等多種平台運行
學習成本低
語法簡單,上手性牆
開(kāi)發效率高,工(gōng)具多多
python開(kāi)發效率非常高,内置多種第三方工(gōng)具庫
擴展性強
被稱爲"膠水語言",可以使用python去(qù)實現其他語言的功能,連接在一(yī)起
正如世界上沒有完美的人一(yī)樣,python作爲一(yī)種高級編程語言,也并不是沒有缺點
動态,解釋性語言
動态性對于後期維護不方便
運行效率
python的運行效率相對其他c,java,go語言來說很低
代碼維護
代碼維護效率低
多線程
python的多線程存在問題
語法古怪
python的語法相對于其他語言來說過于固定格式。
上述表格中(zhōng),灰色爲缺點,藍(lán)色爲優點
相對于C和shell,python的第三方工(gōng)具庫十分(fēn)豐富,且可以自動管理内存,無需人工(gōng)操作
在講如何成爲python程序員(yuán)之前,我(wǒ)們先說一(yī)下(xià)python程序員(yuán)能幹啥
當下(xià),在人工(gōng)智能方面,python可以說是如日中(zhōng)天,人工(gōng)智能學習所需要的工(gōng)具python基本都有。
人工(gōng)智能以計算機技術爲基礎,所以也要以編程語言爲依托,python恰好是适合這樣應用場景的語言==之一(yī)==。某種程度上來說也是最适合的。
Python爲人工(gōng)智能領域提供了一(yī)大(dà)批工(gōng)具:
Tensorflow,pytorch,MXNet
Scikie-learn,numpy,dcikit-image,NLTK …
借助python,可以在人工(gōng)智能領域開(kāi)發過程中(zhōng)減少大(dà)量代碼的編寫
Python在處理大(dà)數據方面優勢十分(fēn)明顯。
Python由于能夠很好的支持協程(Coroutine)操作,基于此發展起來很多并發庫,在大(dà)數據處理和數據可視化方面潛力巨大(dà)。
爬蟲是python的特點之一(yī),利用python的爬蟲庫,可以輕易的快速爬取個人所需要的數據。
python常用的爬蟲庫有:
urllib
Requests
Scrapy
Pyspuder
Scrapy-redis
關于爬蟲這裏多說一(yī)句,爲了防止"面向監獄
"編程,一(yī)定要學習計算機信息安全法
Python對網站開(kāi)發提供了多種框架,例如:
Diango
Flask
tornado
數據庫,前端
python在數據分(fēn)析方面有明顯優勢
常用的數據分(fēn)析庫有:
pandas
Numpy,scipy
matplotlib,seaborn,pyecharts
Scikit-learn(機器學習)
在基礎階段,要先掌握Python的基礎語法,數據類型,函數和面向對象,這基本在所有語言都是通用的
在進階階段,要掌握Python的I/O,異常,進程/協程,語言特性等相關思想
同時,我(wǒ)們也要對Python的工(gōng)具有所了解
數據結構在計算機算法領域十分(fēn)重要,也是程序員(yuán)在面試過程中(zhōng)常考的内容,可以提現一(yī)個程序員(yuán)的語言功底
python由于封裝性過高,我(wǒ)們無法通過python去(qù)了解代碼的底層邏輯,并且在實際工(gōng)作中(zhōng)不可能隻是用Python一(yī)種語言,所以對于其他高級語言也要有所了解。
Python的應用方向主要由三個
web方向主要所學有數據庫原理,web基礎知(zhī)識,web框架,組件,消息隊列,前端等等
Python在爬蟲領域應用廣泛,主要所學内容有網絡基礎,抓包共苦,爬蟲框架,反爬等,同時也要注意遵守法律規定。切勿違法亂紀。
AI方向除了對Python有所掌握外(wài),也要對數學知(zhī)識精通,了解AI主要算法和常用AI框架
在Python進行代碼編寫時,一(yī)定要注意Python編碼規範,我(wǒ)們在實際工(gōng)作中(zhōng),大(dà)概率是團隊協作開(kāi)發,所以,有一(yī)個良好的編碼風格十分(fēn)重要。幫助後續開(kāi)發節約大(dà)量時間
問:學習python有哪些學習課程?
答:目前python的學習課程有很多,學習那些,怎樣學主要取決于大(dà)家學習Python的目的。首先要找到自己的定位,然後去(qù)學習相關基礎知(zhī)識,可以看一(yī)下(xià)圖靈系列的python圖書(shū)或者Python的官方文檔。
問:如果不是專業的程序員(yuán),可以在哪裏找到Python的學習資(zī)源
答:github網站()提供了很多國内外(wài)程序員(yuán)的開(kāi)源項目,大(dà)家可以下(xià)載下(xià)來學習
問:學習完Python後,并沒有感覺收獲很多?
答:學習Python不能從衆,人雲亦雲,一(yī)定要有自己的興趣愛好。同樣也可以去(qù)github下(xià)載優秀開(kāi)源代碼進行學習分(fēn)析。
問:Python近期的就業情況和發展前景?
答:從上面Python的使用情況排名來看,Python還是十分(fēn)火(huǒ)熱的,就業機會和崗位也很多。
問:高級語言都是相似的,Python擅長的領域有哪些?
Python擅長與Web開(kāi)發,且在爬蟲方向沒有競争對手 在AI,數據分(fēn)析,自動化運維方向也具有很多優勢。
本文整理自華爲雲社區内容共創活動第三期之【線上直播】華爲名師揭秘編程界”Python”
查看活動詳情:https://bbs.huaweicloud.com/live/HDZ_live/202103111830.html
來源:https://bbs.huaweicloud.com/blogs/266297
191-1582-9360
四川創藝軟件有限公司 Copyright 2019-2024 友情鏈接: 創藝網站建設 創藝網絡營銷 德陽微信小(xiǎo)程序 德陽網站定制 德陽網站設計 成都網站建設 成都微信小(xiǎo)程序 成都網站定制 若鄰家政服務有限公司