【云駐共創】華為名師揭秘編程界“網紅”Python
計算機與程序員

吃瓜群主眼中的程序員
實際上的計算機專業
不同"品種"的程序員
計算機與程序員
吃瓜群主眼中的程序員
實際上的計算機專業
不同"品種"的程序員
Python程序員
Python的前生今世
Python聲名鵲起
Python:我長這樣誰用啊?
Python為何受人追捧
Python并不是十全十美
Python與其他語言對比分析
Python廣泛的應用領域
Python與人工智能
Python與大數據
Python與爬蟲
Python與網站開發
Python與數據分析
如何成長為Python程序員
從Python語言學起
掌握數據結構
涉獵C/C++/java
選擇Python應用方向
web方向
web方向
AI方向
Python編碼
Python專家答疑解惑
問題1 學習python有哪些學習課程?
問題2 如果不是專業的程序員,可以在哪里找到Python的學習資源
問題3 學習完Python后,并沒有感覺收獲很多?
問題4 Python近期的就業情況和發展前景?
問題5 高級語言都是相似的,Python擅長的領域有哪些?
計算機與程序員
吃瓜群主眼中的程序員
一提到計算機程序員,大部分人的印象可能是修電腦的
或者敲代碼的
或者會盜號的黑客
總之,要么是什么電腦都會修的電腦維修店師傅,要么就是能盜號,會破解程序的大神黑客,其實這都是對我們程序員的一種誤解
實際上的計算機專業
百度百科的解釋:程序員(英文Programmer)是從事程序開發、程序維護的基層工作人員。一般將程序員分為程序設計人員和程序編碼人員,但兩者的界限并不非常清楚。
首先關于修電腦這個問題,作為計算機專業的程序員,在專業知識中除了學習軟件,硬件開發外,當然也要了解一些計算機構造的基本知識,當然程序員可以會修電腦,但不是必須要求。修電腦和編程沒有直接關系。
當然程序員也不一定要敲代碼
舉個例子:你會開車不代表不會修車或者造車,你會寫文章不代表你會造字。
計算機專業是個很寬泛的專業,可以具體細分到很多類別。
計算機主要可以分為==軟件方向==(軟件工程)和==硬件方向==(計算機科學與技術),軟件工程和計算機科學與技術又可以接著細分。現在的人工智能也比較火。
不同"品種"的程序員
在1.2中我們已經介紹了程序員有很多不同的分類,計算機編程語言也有很多種,我們主要根據使用的編程語言對程序員進行分類。
現在主流的高級編程語言主要有下面幾種
0、Python
Python被稱為膠水語言,哪里都可以用。
有句話說:人生苦短,我用Python。
有程序員網友調侃,python最適合女生學……因為包多!
python有很多方便的庫,丟棄c語言復雜的指針,簡化語法,它的存在就是解決問題,而不是讓你理解語言本身。
1、C
C語言是通用的基礎編程語言,編程開發人員加班加點必備武器。
它的特點在于偏向計算機底層操作,多用于性能要求嚴格的領域。
C語言相對來說會難點,光一個指針就足以把你搞暈。入門一般都是啃著譚浩強的C程序設計。
在硬件、虛擬現實VR/AR,C語言和C++占據主導地位。
2、C++
C++以C發展而來,它比C語言多增加了類、繼承、重載、類模板、C++標準庫、模板庫等。
一句話,C面向過程,C++面向對象。
3、Java
Java可能是目前運用最廣的項目語言。
它的特點是,概念簡單,無數的庫,輕松入門so easy!
可應用于服務端編程、高性能網絡程序、分布式計算、安卓移動終端應用開發等。
4、PHP
PHP被程序員網友稱為是世界上最好的語言,但是可能也是被黑的最慘的一門語言。
PHP語法和C類似,有很多的模板和框架,簡單易懂,也許你可以在短短幾天做出web app。
它主要用于web端,快速建站網絡開發必備。
5、Javascript
JavaScript是JavaScript 是目前所有主流瀏覽器上唯一支持的腳本語言,僅用10天的時間設計出來。
在前端開發中,占有不可替代的地位。
當然這些語言不是說只能做某些東西,只是說他們各有所長
下面主要介紹本文的主角Python
Python程序員
Python的前生今世
python發展歷程
1991年,第一個正式版解釋器誕生(c語言實現)
2000年,Python2。
2008年,Python3。
2021年,Python3.9.x
截止到2021年5月4日,根據python官方網站(https://www.python.org/)消息,Python3.10已經發布。
Python是目前非常流行的一種編程語言,但它并不是一種新語言,三十年前就已經開發出來(1991年)。
可以看到python進行了兩個重大的更新,也就是Python2到Python3的更新,如果按照大家的正常思維來想,應該python2到python3是向下兼容的,在python2開發的軟件在python3版本也可以運行。實際上python2和python3
是兩個完全不相同的版本,并不互相兼容,所以在進行python開發時,一定要注意版本選擇。
大部分情況下我們使用的都是Python3.X版本,但Python的版本并不是越高越好,不建議使用最新發布的版本,可能會存在一下BUG和漏洞,目前比較穩定的版本為Python3.7
Python聲名鵲起
Python在發布之初還只是一個小眾語言,當時(指上個世紀九十年代)的流行語言主要還是C語言。但是在2021年5月發布的最新==編程語言排名表==可以發現Python的熱度已經到達第2名,僅次于編程語言鼻祖C語言,而且還在處于上升趨勢。
上圖編程語言排名圖來自網頁 https://tiobe.com/tiobe-index/
上圖編程語言排名圖來自網頁 https://tiobe.com/tiobe-index/
上圖為2001年1月-2021年5月主流編程語言排名占比可以看出在2018年后,python語言的上升趨勢很明顯主要原因有:
部分國內外中小學已經把python列為學習科目
少兒編程培訓機構對python的宣傳
人工智能的發展火熱
不難看出,既然可以在中小學生中推廣,必然說明Python相對其他編程語言來說十分簡單,也很有潛力
上圖編程語言排名圖來自網頁 https://tiobe.com/tiobe-index/
上圖為近十年每年評選出的明星語言,可以看到在2018和2020年python均為明星語言,表現已經和C語言不分伯仲
Python:我長這樣誰用啊?
目前使用python語言的主要知名公司有
Google:==python==,java和c是其主要三大開發語言
NASA:使用python進行數據分析運算
豆瓣,知乎
Dropbox:使用python處理十億級別數據
YouTube:用python構建網站
Python為何受人追捧
動態,解釋性語言
在python使用數據時,無需提前定義,可提前執行腳本
開源,跨平臺
python支持linux,mac,window等多種平臺運行
學習成本低
語法簡單,上手性墻
開發效率高,工具多多
python開發效率非常高,內置多種第三方工具庫
擴展性強
被稱為"膠水語言",可以使用python去實現其他語言的功能,連接在一起
Python并不是十全十美
正如世界上沒有完美的人一樣,python作為一種高級編程語言,也并不是沒有缺點
動態,解釋性語言
動態性對于后期維護不方便
運行效率
python的運行效率相對其他c,java,go語言來說很低
代碼維護
代碼維護效率低
多線程
python的多線程存在問題
語法古怪
python的語法相對于其他語言來說過于固定格式。
Python與其他語言對比分析
上述表格中,灰色為缺點,藍色為優點
相對于C和shell,python的第三方工具庫十分豐富,且可以自動管理內存,無需人工操作
Python廣泛的應用領域
在講如何成為python程序員之前,我們先說一下python程序員能干啥
Python與人工智能
當下,在人工智能方面,python可以說是如日中天,人工智能學習所需要的工具python基本都有。
人工智能以計算機技術為基礎,所以也要以編程語言為依托,python恰好是適合這樣應用場景的語言==之一==。某種程度上來說也是最適合的。
Python為人工智能領域提供了一大批工具:
Tensorflow,pytorch,MXNet
Scikie-learn,numpy,dcikit-image,NLTK …
借助python,可以在人工智能領域開發過程中減少大量代碼的編寫
Python與大數據
Python在處理大數據方面優勢十分明顯。
Python由于能夠很好的支持協程(Coroutine)操作,基于此發展起來很多并發庫,在大數據處理和數據可視化方面潛力巨大。
Python與爬蟲
爬蟲是python的特點之一,利用python的爬蟲庫,可以輕易的快速爬取個人所需要的數據。
python常用的爬蟲庫有:
urllib
Requests
Scrapy
Pyspuder
Scrapy-redis
關于爬蟲這里多說一句,為了防止"面向監獄"編程,一定要學習計算機信息安全法
Python與網站開發
Python對網站開發提供了多種框架,例如:
Diango
Flask
web.py
tornado
數據庫,前端
Python與數據分析
python在數據分析方面有明顯優勢
常用的數據分析庫有:
pandas
Numpy,scipy
matplotlib,seaborn,pyecharts
Scikit-learn(機器學習)
如何成長為Python程序員
從Python語言學起
在基礎階段,要先掌握Python的基礎語法,數據類型,函數和面向對象,這基本在所有語言都是通用的
在進階階段,要掌握Python的I/O,異常,進程/協程,語言特性等相關思想
同時,我們也要對Python的工具有所了解
掌握數據結構
數據結構在計算機算法領域十分重要,也是程序員在面試過程中常考的內容,可以提現一個程序員的語言功底
涉獵C/C++/java
python由于封裝性過高,我們無法通過python去了解代碼的底層邏輯,并且在實際工作中不可能只是用Python一種語言,所以對于其他高級語言也要有所了解。
選擇Python應用方向
Python的應用方向主要由三個
web方向
web方向主要所學有數據庫原理,web基礎知識,web框架,組件,消息隊列,前端等等
web方向
Python在爬蟲領域應用廣泛,主要所學內容有網絡基礎,抓包共苦,爬蟲框架,反爬等,同時也要注意遵守法律規定。切勿違法亂紀。
AI方向
AI方向除了對Python有所掌握外,也要對數學知識精通,了解AI主要算法和常用AI框架
Python編碼
在Python進行代碼編寫時,一定要注意Python編碼規范,我們在實際工作中,大概率是團隊協作開發,所以,有一個良好的編碼風格十分重要。幫助后續開發節約大量時間
Python專家答疑解惑
問題1 學習python有哪些學習課程?
問:學習python有哪些學習課程?
答:目前python的學習課程有很多,學習那些,怎樣學主要取決于大家學習Python的目的。首先要找到自己的定位,然后去學習相關基礎知識,可以看一下圖靈系列的python圖書或者Python的官方文檔。
問題2 如果不是專業的程序員,可以在哪里找到Python的學習資源
問:如果不是專業的程序員,可以在哪里找到Python的學習資源
答:github網站()提供了很多國內外程序員的開源項目,大家可以下載下來學習
問題3 學習完Python后,并沒有感覺收獲很多?
問:學習完Python后,并沒有感覺收獲很多?
答:學習Python不能從眾,人云亦云,一定要有自己的興趣愛好。同樣也可以去github下載優秀開源代碼進行學習分析。
問題4 Python近期的就業情況和發展前景?
問:Python近期的就業情況和發展前景?
答:從上面Python的使用情況排名來看,Python還是十分火熱的,就業機會和崗位也很多。
問題5 高級語言都是相似的,Python擅長的領域有哪些?
問:高級語言都是相似的,Python擅長的領域有哪些?
Python擅長與Web開發,且在爬蟲方向沒有競爭對手 在AI,數據分析,自動化運維方向也具有很多優勢。
本文整理自華為云社區內容共創活動第三期之【線上直播】華為名師揭秘編程界”Python”
查看活動詳情:https://bbs.huaweicloud.com/live/HDZ_live/202103111830.html
Python 開發者
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。