影響全球70億人的編程語言Python究竟如何自學?
來源:
奇酷教育 發表于:
影響全球70億人的編程語言Python究竟如何自學?
開 篇
“21世紀,不會Python等于文盲。當然,這門影響全球70億人的編程語言Python,也可能成為全世界通用的語言。那么Python究竟如何自學?又或者,編程如何自學?”
分情況討論
當然,說轉行,說跨界,或者說自學,這幾個詞可能都輕了,“自學編程”也可能是發自內心的要致敬夢想——
如果是985、211大佬或者搞過其他語言的(學過HTML的不算!),不需要學,一看就會。
完全沒接觸過編程的話,自學的話,要分情況討論:
(1)如果你只是拿這個語言干點小工作或者小腳本,自娛自樂。難度等級為:簡單。
(2)如果要靠這個吃飯,難度等級為:困難。
別問為什么,問就是,計算機學著挺有意思,就是頭有點冷。
確定自學的話,語言基礎全家桶【變量、數據類型、選擇和循環語句、函數、類、模塊】,這些語法、概念要先搞定。用的時候,邊用邊學,邊學邊用,過一段時間自然就掌握了。。
而且這些東西,可以直接往其他語言上套用。套不上?等套不上再說!
隨手推個免費教程福利大家——菜鳥教程:
https://www.runoob.com/python3/python3-tutorial.html(不是廣告、不是廣告、不是廣告,基本語法這一塊,996的話,10天就差不多了。)

基礎有了,接下來是環境配置:
環境配置這一塊就是(python3.x + pycharm)
有需要軟件的,關注微信公眾號回復Python自學軟件包 可以免費獲取。
岔路口
然后就是岔路口。
Python自學可以分五條路:
自動化運維
Web
爬蟲
數據分析
人工智能(數據智能化)
Web
先聊聊web,那么傳統的HTML,CSS,JavaScript這三樣不能少了吧!
JavaScript一些庫和框架也要了解一些吧!jQuery,Bootstrap,Ajax。
前端框架也要了解一些吧!Vue,Angular,React。框架核心還是JavaScript。
后端框架也要了解一些吧!Django,Flask,Tornado。
數據庫也要了解一些吧!MySQL,MongoDB,Redis。
網絡也要了解一些吧!Socket,TCP/IP,HTTP。
序列化也要了解一些吧!JSON,XML,ProtoBuff。
但是后邊這幾個(數據庫,網絡,序列化)是所有技術通用的。
搞個Web這么大一堆東西~
爬蟲
爬蟲的自學主要分為三步:
(1)把冰箱門打開
(2)把大象塞進去
(3)把冰箱門關上
抱歉,走錯片場了,應該是:
(1)模擬網絡請求
(2)信息解析
(3)數據持久化
urllib,requests這兩個基礎的請求庫,或者只學后一個也可以。
lxml/xpath,beautifulsoup/css選擇器,正則這些解析工具。
selenium,appnium,airtest這些自動化測試工具,雖然這些事測試工程師的工具,但是搞爬蟲的也要學一學,主要是為了反爬。
Fiddler,Charles, Wireshake這些抓包工具,用來搞一搞app。
Scrapy,Celery,Apsheduler框架也要了解一下。
UA,IP,Cookie,字體反爬,css反爬,驗證碼,js加密,安卓逆向這些反爬措施也要了解一下吧。
當然,再搞點多進程多線程協程。
其實爬蟲搞到最后……每個知識都是一個入獄小技巧。
數據分析
數據分析
數據分析主要是用來加速數據處理或者可視化等。
數字數據處理那就學一學numpy,pandas,scipy。
數據可視化可以學一學matplotlib,pyecharts,seaborn。
BI工具可以學一學PowerBI,Tableau,FineBI。
當然數據分析再多走一步就是數據挖掘,機器學習了。比如sklearn、pytorch,tensorflow。
人工智能
人工智能的自學,主要就是玩數學和算法了,而且方向其實分的也很細。不同的方向,知識體系也是千差萬別,現在大部分人工智能都在指的是機器學習的領域。

機器學習的資料也給大家準備好了,推薦一位大佬的內容:
https://www.cnblogs.com/subconscious/p/4107357.html
不僅內容通俗易懂,而且寫技術都能寫的那么smart......
真正的開始——致敬夢想
當基礎語法搞定、方向選定,真正的自學之路才剛剛開始,最有價值的建議是買本參考書,心和舞臺都會逐漸放大。

刷題的題庫也給大家準備好了:
https://www.zhihu.com/question/265662120/answer/1174288268
自學Python的8個小建議
想像刷抖音一樣學Python,我們為你準備了8個小建議:
(1)首先興趣是第一驅動力,如果能有一些志同道合的小伙伴一起學習或者大佬帶一帶那是最好的。一定要耐的住性子,畢竟編程是一個實踐性很強的活動。
(2)詳細的學習計劃,最好用一些工具,給自己安排一些計劃,并嚴格執行,形成固定的課程表。不然拖延癥一犯——今天是a = 100,一年后b = “hello world”。
(3)自信一點,不要懷疑自己,頂尖的那些程序員是需要一些天賦,但大部分都還輪不到拼天賦的地步。
(4)出錯不要慌,英語好的同學,直接看報錯信息,不好的小伙伴拿出你們谷歌百度翻譯,先看報錯說明,不行的話,把你的報錯ctrl+C然后ctrl+V到谷歌百度,如果還不行可以到知乎,論壇什么的發帖求教。
(5)有些內容雖好,但不必一開始就啃,比如數據結構,算法,計算機組成原理,計算機操作系統,計算機網絡,數據庫系統……往后放一放,不然沒有什么成就感。
(6)多練習多表達,可以用博客的方式記錄自己的學習過程或者學習心得,甚至自己的代碼也可以保存一份,過一段時間再回來看看,別有一番風味。
(7)學編程很多時候需要“不求甚解”,對于某些抽象的概念如果怎么想都想不明白,可以先放一放,先比著葫蘆畫瓢搞明白怎么做就可以了,具體為什么隨著學習的深入自然就明白了。畢竟我們要建的是一片森林,不能盯著一棵樹看。
(8)最后三個字,敲代碼。鍵盤敲爛,月薪過萬!