Tuesday, July 4, 2023

新手如何自學python

        最近看到個關於新手如何學習python的討論串。順便分享一下我自己學習python的經驗,希望能幫新同學少走彎路少採坑。

        因為我不是Computer Science背景的,也不是上課程有系統學python,加上我學習python的時候年紀已經很大了,完全是一套野蠻生長的學習套路,我沒怎麼看書,幸運的是身旁的同事都是python高手,或是其他相關團隊例如DBA/Hadoop/BI/modeling/app開發/docker,靠著不要臉的方式問這些小朋友,然後網上找解答(這個下期介紹)。因此一些同學會遇到的問題,我應該都遇過。目前我工作上每天都需要用到python。另外在一些課程平台上也有開課。因為這些課程一般同學應該都無法買,所以也沒啥打廣告的嫌疑。


       
 

先總結幾個重點:

  • python是個膠水語言:

        在python原生功能上,很多開源代碼能在python的架構上拓展出各種功能,例如爬蟲、架網頁、語音與圖像識別、Line/Wechat機器人、遊戲開發、數據分析等等。只要在python上導入這些開源三方庫,只要依據這些 三方庫的使用說明調整參數,你就多了一項新技能。只要學通了python的基礎語法,一些新功能翻一下說明書(help)或是網路上查找一下別人寫的例子,大概就會寫了。

        之前發表了幾篇利關於ChatGPT的作品。我沒學過 linebot、語音轉文字、文字轉語音。但是python懂基礎。看一看說明書就寫出來了。至於要python腳本要在自己的NB/桌機/迷你電腦/Cloud跑?靠自己得經驗了。

  • 選擇學習目標:

        對於我們這些非科班的新手來說,需要先選定一個明確得學習目標。例如爬蟲、製作遊戲、圖像識別、數據分析。要提醒的是,如果不是工作需要,你必須確定是這個學習目標你會長期做下去而且是跟你生活有關的。前面所舉得幾個學習目標其實也是個坑,因為通常學python做了一兩個作品之後,因為沒工作需求這樣的壓力,你就沒興趣學下去了。

  • Bugs才是常態

        不管是很熟悉的函數,或者是第一次用的函數,每天的工作大部分時間是在debug。所以新同學在學習python的時候遇到bugs是正常不過的事了。學python最核心的工作之一,是學習解讀這些bugs並查找解決方法。所以不用怕bugs,習慣就好。

  • 學習重點不是書
        我買了好幾本python入門的書,但幾乎都只有看了前面幾章節就把書放在書架上生灰塵了。例如我看到list就不看了,因為書上說的一方面我還用不上,另方面我急著學的上面沒有。所以我的學習資源都是網路上自己找的。

        雖然我是野蠻學習法,但這也是除了debugs之外,學習python的另一個學習核心:得學會自己找資源。

  • 學習資源

        我的學習資源不是靠google或是YT ,我的學習資源主要在左岸。除了左岸使用中文之外,600萬的程序員和分享論壇也讓資源查找更方便。我下一期再介紹一下如何查找左岸的python資源。



       每個人的經歷、學歷、工作、需求、目標都不一樣。因此大家python的學習路徑也不必一樣。雖然這會讓很多新同學在學習python的時候感到更迷茫。其實這也是讓同學更要了解自己想要學習python的目的是什麼,python應用面太廣了,學不完的,盡早確認目標,判斷哪些必學哪些不用學。找出自己最合適的學習路徑。

No comments:

Post a Comment