想學Python卻不知從何開始?別怕!這篇Python新手教學帶你從零基礎到寫出第一個程式,超實用撇步、學習資源大公開,讓你輕鬆入門程式世界!快來看我怎麼學的吧!

嗨,我是個程式麻瓜,但現在我用Python超開心!😂

大家好!我是小編阿K!不知道你們是不是跟我一樣,以前聽到「程式設計」就覺得是超難、超硬、只有理工男才會碰的東西?我高中是文組,大學讀的也是商科,完全跟程式沾不上邊。但是,就在我大三那年,因為實習接觸到數據分析,發現很多報告都需要靠手動整理Excel,做到眼睛脫窗、懷疑人生。那時候聽說Python可以自動化這些事情,心裡就想:「哇賽!如果我學會了,不就省下超多時間去追劇、打電動、吃美食了?」✨ 從那時候起,我就一腳踏進了Python這個神奇的世界。這篇Python新手教學就是我從一個完全的「程式麻瓜」到現在可以寫一些小工具的心得分享!

從零開始的第一步:安裝Python,別怕,超簡單的!

我記得我剛開始的時候,光是要安裝Python就研究了半天,深怕自己一個不小心就把電腦搞壞。但其實,現在的安裝流程已經超級友善了,你只要跟著步驟走,絕對沒問題的!

1. 為什麼選擇Anaconda?

一開始我上網查,發現很多人推薦直接安裝「Anaconda」。那時候我根本搞不清楚什麼是Anaconda,只知道大家都說它包山包海,適合新手。後來才知道,Anaconda不只包含了Python本身,還幫你準備好了一大堆常用的科學計算套件,像是Numpy、Pandas、Matplotlib等等,還有一個很方便的開發環境叫做Jupyter Notebook。對Python新手教學來說,Anaconda真的是佛心來著!

2. Anaconda安裝步驟小撇步

– 到Anaconda官網下載適合你作業系統的版本(Windows、macOS或Linux)。
– 下載完畢後,點兩下執行安裝檔。
– 一路「Next」下去就對了!中間會有一個選項問你「Add Anaconda to my PATH environment variable」,這裡**記得要勾選**,這樣以後在命令提示字元(或終端機)裡就可以直接呼叫Python指令了,省去很多麻煩!
– 安裝完成後,打開你的命令提示字元(或終端機),輸入`python –version`,如果看到Python的版本號,恭喜你,成功啦!🎉

我的第一個程式:Hello World,感動到想哭!😭

安裝好Python後,接下來就是要寫程式啦!我還記得我寫下的第一行程式碼,印出「Hello World」,那個感動程度真的不亞於我考試考到100分!

1. 選擇你的第一個編輯器:Jupyter Notebook

Anaconda安裝好之後,在開始選單(Windows)或應用程式(macOS)裡找到「Anaconda Navigator」,點開後你會看到一大堆工具。我建議Python新手教學的第一步,可以從Jupyter Notebook開始。

– **為什麼是Jupyter Notebook?** 它像一本互動式的筆記本,你可以把程式碼和文字說明寫在一起,分塊執行,非常適合邊學邊實驗。我那時候寫錯了,直接改那一行再執行就好,不用整份程式碼重新跑一次,超方便的!
– 點擊Anaconda Navigator裡的「Launch」Jupyter Notebook,它就會在你的瀏覽器裡打開一個新的頁面。
– 點選右上角的「New」->「Python 3 (ipykernel)」,就會開啟一個新的筆記本檔案了。

2. 輸入你的第一行程式碼

在筆記本的格子裡輸入:
`print(“Hello World!”)`
然後按下Shift + Enter,或是點選工具列上的「Run」按鈕。
如果下方顯示了「Hello World!」,恭喜你,你已經是一個程式設計師了!😎 是不是超有成就感!

Python的基本語法:這些你一定要知道!

學任何語言都要從最基礎的語法開始,Python也不例外。不過別擔心,Python的語法超級人性化,號稱是「最接近人類語言」的程式語言。我那時候學起來真的覺得比英文文法簡單太多了啦!🤣

1. 變數:程式裡的記憶盒子

想像一下,你玩遊戲的時候,是不是要記住你的金幣有多少、生命值是多少?程式也是一樣,需要記憶這些資訊,這時候就需要用到「變數」。

– **怎麼用?** 變數就是給資料一個名字,方便我們之後使用。
– 範例:
`my_name = “阿K”`
`my_age = 25`
`print(my_name)` # 會印出 “阿K”
`print(my_age)` # 會印出 25
– 小撇步:變數名稱要好記、有意義,不要取什麼a、b、c,這樣以後看自己的程式會看到霧煞煞!

2. 資料型別:資料的不同屬性

不是所有的數字都是數字、不是所有的文字都是文字喔!Python會把資料分成不同的「型別」。

– **常見的型別:**
– **整數 (int):** 10, -5, 0 (沒有小數點的數字)
– **浮點數 (float):** 3.14, 0.5 (有小數點的數字)
– **字串 (str):** “Hello”, ‘Python’ (用引號括起來的文字)
– **布林值 (bool):** True, False (表示真或假)
– 為什麼要分型別?因為不同型別的資料可以做的事情不一樣。你不能把名字跟年齡直接相加吧?😂

3. 運算子:讓程式動起來的工具

加減乘除、比較大小,這些程式都能做!

– **算術運算子:** `+` (加), `-` (減), `*` (乘), `/` (除), `**` (次方), `%` (取餘數), `//` (取商數)
– **比較運算子:** `==` (等於), `!=` (不等於), `>` (大於), `<` (小於), `>=` (大於等於), `<=` (小於等於) - **邏輯運算子:** `and` (且), `or` (或), `not` (非) - 範例: `a = 10` `b = 3` `print(a + b)` # 13 `print(a > b)` # True

4. 條件判斷 (if/elif/else):讓程式做選擇

程式可以根據不同的條件,做出不同的反應。想像一下,你肚子餓了(條件),如果家裡有泡麵,就煮泡麵吃(動作A);如果沒有,就叫外賣(動作B)。

– **語法:**
`if 條件A:`
`# 執行程式碼A`
`elif 條件B:`
`# 執行程式碼B`
`else:`
`# 執行程式碼C`
– **小眉角:** 記得每個條件後面要加冒號 `:`,程式碼也要縮排(通常是4個空白鍵或一個Tab鍵),Python靠縮排來判斷程式碼的區塊喔!
– 我的小故事:我第一次寫自動分類文件的小程式,就是靠`if`判斷檔名裡有沒有某些關鍵字,再把它搬到對應的資料夾。看到檔案自己跳過去的時候,真的覺得程式超酷的!🤩

5. 迴圈 (for/while):讓程式重複做事

如果你要程式重複做一件事很多次,總不能一直複製貼上吧?這時候迴圈就派上用場了!

– **for 迴圈:** 通常用於知道要重複幾次的情況,或遍歷一個序列(比如一個清單)。
`for i in range(5):` # 從0到4,重複5次
`print(i)`
– **while 迴圈:** 通常用於不知道要重複幾次,但知道什麼時候該停止的情況(直到某個條件不成立)。
`count = 0`
`while count < 3:` `print("我還在重複!")` `count += 1` # 每次迴圈讓count加1,否則會無限迴圈喔! - 小故事:我剛學會迴圈的時候,就用它來爬Dcard上特定關鍵字的文章標題。雖然爬下來的資料一開始亂七八糟,但那種「我竟然能讓電腦幫我自動抓資料!」的感覺,真的超級爽的!

資料結構:把資料整理好,程式才好用!

學會了基本語法,你會發現,實際應用時常常需要處理一大堆資料。這時候,把資料好好「包裝」起來就超級重要了!Python提供了幾種超好用的資料結構,它們就像不同的收納盒,讓你的資料井井有條。

1. 列表 (List):萬用清單,什麼都能裝!

列表就像一個購物清單,你可以把任何東西放進去,而且順序很重要,也可以重複。

– **特性:** 可變動(可以新增、刪除、修改元素),有序(有順序)。
– **範例:**
`my_foods = [“滷肉飯”, “雞排”, “珍奶”]`
`my_foods.append(“鹹酥雞”)` # 新增元素
`print(my_foods[0])` # 存取第一個元素,會印出 “滷肉飯”
– 我常用列表來儲存爬下來的Dcard文章標題、朋友的生日清單,甚至是準備要寄的Email地址。超好用!

2. 元組 (Tuple):不可變動的清單

元組跟列表很像,只是它一旦建立,裡面的元素就不能再修改了。聽起來好像比較不方便,但其實在某些情況下,因為它不會被意外修改,反而更安全、效能更好。

– **特性:** 不可變動,有序。
– **範例:**
`my_coordinates = (23.5, 120.9)` # 經緯度通常不會變,就適合用元組
– 我個人比較少直接用到元組,但很多Python內建的功能會返回元組,所以認識它還是很重要的!

3. 字典 (Dictionary):用「鍵值」來找資料,超直覺!

字典就像一本真正的字典,你可以輸入一個字(鍵),然後找到它的解釋(值)。它用鍵(key)來對應值(value),而不是像列表一樣用數字順序。

– **特性:** 可變動,無序(Python 3.7+後有插入順序),透過鍵存取。
– **範例:**
`student_info = {“name”: “小明”, “age”: 20, “major”: “資管系”}`
`print(student_info[“name”])` # 會印出 “小明”
`student_info[“age”] = 21` # 修改值
`student_info[“gender”] = “男”` # 新增鍵值對
– 小故事:我用字典來儲存我的線上課程進度。每個課程名稱當作鍵,值就是我的學習百分比。這樣我就能快速查詢我學到哪裡,超級方便!

4. 集合 (Set):不重複的獨特資料

集合就像一個去除重複項的列表。如果你有一堆亂七八糟的資料,想找出其中所有不重複的項目,集合就是你的好幫手!

– **特性:** 可變動,無序,元素不重複。
– **範例:**
`my_numbers = {1, 2, 2, 3, 4, 4, 5}`
`print(my_numbers)` # 會印出 {1, 2, 3, 4, 5}
– 我常用集合來找出重複的資料,或是計算兩個清單的交集、聯集,做數據清洗的時候超好用!

函式 (Function):把程式碼打包成小工具,重複利用!

寫程式常常會遇到「這段程式碼好像常常會用到耶!」這種情況。如果每次都複製貼上,不僅程式碼會變得又臭又長,以後要修改也很麻煩。這時候,函式就是你的救星!

1. 為什麼需要函式?

– **程式碼重用:** 把常用功能寫成函式,之後只要呼叫函式名稱就好。
– **模組化:** 把程式拆分成小塊,更容易閱讀、維護和測試。
– **提升可讀性:** 看到函式名稱就知道這段程式碼在做什麼。

2. 怎麼定義函式?

– **語法:**
`def 函式名稱(參數1, 參數2):`
`# 函式要執行的程式碼`
`return 結果`
– `def`是定義函式的關鍵字。
– `函式名稱`:你要給這個小工具取什麼名字。
– `參數`:這個函式執行時需要的輸入資料。
– `return`:函式執行完畢後,要把什麼結果回傳出去。
– 範例:
`def greet(name):`
`message = “哈囉,” + name + “!歡迎來到Python的世界!”`
`return message`

`my_greeting = greet(“阿K”)`
`print(my_greeting)` # 會印出 “哈囉,阿K!歡迎來到Python的世界!”
– 小故事:我那時候寫了一個分析社群貼文情緒的函式,只要把貼文文字丟進去,它就能回傳是正面、負面還是中立情緒。有了這個函式,我只要換不同的貼文,就能重複分析,省了超級多力氣!而且把這段邏輯包成函式,整個程式碼也變得超乾淨的。

Python新手教學的進階:套件與模組,站在巨人的肩膀上!

Python之所以這麼強大,很大一部分原因是因為它有超級豐富的「套件」和「模組」。這些就像是別人已經幫你寫好的各種工具箱,你不需要從頭開始造輪子,直接拿來用就好,超級方便!

1. 什麼是套件和模組?

– **模組 (Module):** 其實就是一個`.py`的檔案,裡面包含了很多函式、變數等等。
– **套件 (Package):** 一個包含多個模組的資料夾。想像一個大箱子,裡面裝了很多工具盒(模組)。

2. 常用的Python套件

– **Numpy:** 處理數字陣列,尤其在科學計算中非常重要。
– **Pandas:** 處理表格數據(想像成更強大的Excel),做數據分析幾乎必備!
– **Matplotlib/Seaborn:** 繪製各種圖表,讓你的數據會說話。
– **Scikit-learn:** 機器學習套件,想玩AI的你絕對不能錯過!
– **Requests:** 讓你輕鬆發送HTTP請求,也就是「網路爬蟲」的好幫手!

3. 怎麼安裝和使用套件?

– **安裝:** 在命令提示字元(或終端機)輸入`pip install 套件名稱`。例如:`pip install pandas`。
– **使用:** 在你的Python程式碼裡,用`import 套件名稱`來載入。
`import pandas as pd` # 通常會取個縮寫,方便使用

– 小故事:我第一次用Pandas做數據清理的時候,真的覺得這套件太神了!以前在Excel要拉公式、篩選半天的東西,Pandas幾行程式碼就搞定。有一次我整理了幾十萬筆的電商銷售數據,用Pandas處理完,發現問題商品和熱銷商品,真的讓老闆嚇到,以為我週末加班做出來的!結果我根本沒花多少時間,就覺得自己超像魔法師!🧙‍♀️

Python新手教學的學習資源:我都在哪裡充電?

自學程式真的很需要找到好的資源,我把我的私藏清單分享給大家!

1. 線上課程

– **Coursera/Udemy/Hahow:** 上面有很多品質很高的付費課程,從入門到進階都有。我會看課程評價和老師的口音來選擇。付費課程的優點是內容系統化,通常有作業和專案練習。
– **YouTube:** 很多大神會分享免費的Python教學影片,有時候遇到特定問題,直接搜尋YouTube反而更快找到答案。我超愛看一些台灣老師的教學,聽母語就是比較親切!🤣

2. 官方文件與書籍

– **Python官方文件:** 雖然對新手來說可能有點硬,但當你對某個功能有疑問時,官方文件永遠是最權威、最準確的解答。
– **入門書籍:** 我覺得《Python學習手冊》之類的實體書也很棒,可以當作工具書,放在手邊隨時翻閱。

3. 社群與實作

– **Dcard/PTT 程式相關版:** 其實這裡面有很多高手,遇到問題發文問,常常會有熱心的大神解答。我也會看別人問的問題,有時候會有意外的收穫。
– **GitHub:** 學習看別人的程式碼,試著理解他們怎麼解決問題,甚至可以貢獻自己的程式碼。
– **自己動手做專案:** 這是最重要的!看再多書、上再多課,不如自己動手寫一個小程式。即使只是一個簡單的計算機、一個自動發送訊息的機器人,從無到有的成就感,會讓你更有動力繼續學下去。

4. 我的學習心態:不要怕犯錯,享受解決問題的樂趣!

我剛開始學程式的時候,常常會遇到各種奇奇怪怪的錯誤(Error),有時候光是一個小小的拼錯字,就能讓我卡關半天。那時候真的會很沮喪,覺得自己是不是不適合學程式。

但是後來我發現,程式設計就是一個不斷犯錯、不斷修正的過程。每一次的錯誤,都是一次學習的機會。學會看懂錯誤訊息、學會利用Google搜尋解決方案,這本身就是一個很重要的技能。

我現在把寫程式當成在玩一場解謎遊戲,當我成功解決一個問題,讓程式跑起來的時候,那種腎上腺素飆升的感覺,真的超!級!棒!👍

給Python新手教學的幾點實用建議!

1. 保持好奇心,多方嘗試

不要只侷限在教程裡的內容,試著修改程式碼,看看會發生什麼。多去思考「這個功能我能不能用Python來實現?」。

2. 每天寫一點,保持手感

程式設計就像學鋼琴,一段時間沒練手感會生疏。即使每天只寫15-30分鐘,累積下來的效果也很可觀。

3. 勇敢提問,善用社群

卡關的時候不要憋著,勇敢地把問題貼到社群論壇。你會發現很多熱心的人願意幫助你。當然,提問之前也要先自己Google一下,這樣別人也比較容易幫你!

4. 找到學習夥伴,互相鼓勵

如果能找到一起學習的朋友,可以互相討論、互相督促。像我以前就會跟我幾個朋友一起開視訊,各自寫自己的程式,有問題就直接在裡面問,感覺就不會那麼孤單了。

我的Python旅程還在繼續,你的呢?

從一個完全不懂程式的「麻瓜」,到現在可以用Python做一些小工具來輔助我的工作和生活,這趟旅程真的充滿驚喜和成就感!Python新手教學的這條路或許會有些挑戰,但相信我,當你成功寫出第一個能動的程式、解決一個實際問題的時候,你會覺得一切都值得了!

希望我的分享對正在觀望或剛踏入Python世界的你有幫助!如果你也有什麼Python學習心得、推薦的資源,或是遇到什麼問題想討論,歡迎在下面留言跟我分享喔!我們一起進步,一起成為Python大師吧!💪

Write a Reply or Comment

Your email address will not be published.


You may use these HTMLtags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>