Python 入門:第一行程式碼

進階

Python 是打字寫的程式語言,一行行指令由上至下執行。print() 負責顯示,變數就像有名字的盒子用來裝資料。

適合:中一資訊及通訊科技 · 單元:編程入門 · 建議學習路徑第 9/13 課

學完呢課,你會識:
  • Python 一行行由上至下執行
  • print() 顯示;文字加引號、數字不用
  • 變數=有名盒子:x = 5 是「放入」,不是「相等」
資訊及通訊科技Information & Communication Technology
讀呢課前,你應該識: Scratch 入門:第一個作品

§課文原文 Passage

1Python 是現時全球最流行的文字編程語言之一,語法接近英文,簡潔易讀,應用範圍極廣,由人工智能、數據分析到網站開發都派得上用場。傳統上第一行程式碼是 print("Hello"),作用是命令電腦把文字輸出到螢幕,這也是學習者與電腦的第一次對話。

2實際操作上,安裝 Python 或使用網上編輯器之後,可以先由 print 輸出練習入手,再學習以變數儲存資料,以及用 input() 讀取使用者的輸入,切忌一次過抄下大量範例而不求理解。程式檔案要以 .py 副檔名儲存,在命令行執行後便能看見結果;遇到錯誤訊息時,仔細閱讀行號與提示,正是學習除錯的第一課。

3香港例子:中環的銀行以 Python 分析市場數據,天氣應用程式也用它處理大量氣象數字,本地初創企業與科研團隊同樣廣泛採用。初中階段打好基礎,對將來高中 ICT 選修、大學升學以至投身資訊科技行業都是重要準備,選科與升學時也會多一個清晰的方向。

1重點摘要 Summary

Python 是打字寫的程式語言,一行行指令由上至下執行。print() 負責顯示,變數就像有名字的盒子用來裝資料。

2生字卡 Vocabulary

P
PythonPython 語言

一種文字式程式語言,寫法接近英文,初中最常用來學編程。

p
print()顯示指令

把括號內的內容顯示在螢幕,例如 print('Hello')。

V
Variable變數

有名字的「盒子」,用來儲存資料,之後用名字取回內容。

S
String字串

文字資料,前後要加引號,例如 'Hello'。

I
Integer整數

沒有小數點的數,例如 7、-3;寫程式直接寫,不用引號。

i
input()輸入指令

等用戶打字並返回輸入;返回的東西一律是字串。

S
Syntax語法

程式語言的寫法規則;寫錯了電腦會報錯,不肯執行。

F
File extension (.py)副檔名(.py)

檔名末段標示檔案類型;Python 程式以 .py 結尾。

3逐步講解 Steps

  1. 程式怎樣運行電腦執行 Python 程式的方式是由第一行開始,逐行向下執行,直到最後一行,中間不會跳行也不會倒退。這與 Scratch 積木由上至下逐塊執行完全一樣,都是「順序結構」。明白這一點非常重要:如果第三行把變數改掉,第四行讀到的便是新值,不是舊值;程式的結果取決於行的先後次序,把兩行程式對調,結果可能完全不同。閱讀別人的程式時,用手指逐行指住讀,模擬電腦的執行次序,是初學者最有效的理解方法。
  2. 第一行程式碼傳統上學任何程式語言的第一句都是輸出文字,Python 的寫法是 print('你好,世界!')。print 是「列印到螢幕」的指令,括號內是要顯示的內容。規則一:文字(字串)必須用引號包住,單引號或雙引號都可以,print('Hello') 與 print("Hello") 效果相同;規則二:數字不用引號,print(7) 會顯示 7。若漏了引號,print(Hello) 會報錯,因為電腦以為 Hello 是某個變數名。引號內的內容會原樣顯示,包括空格;引號之外才是程式碼的世界。
  3. 變數:貼了名字的盒子變數像一個貼了名字的盒子,用來儲存資料。寫 age = 12 的意思是:把數值 12 放進名叫 age 的盒子;之後寫 print(age),電腦便打開盒子,顯示 12。盒中的內容可以隨時更換:先 age = 12,再 age = 13,盒子裡現在是 13,舊值 12 被覆蓋。最關鍵的觀念:等號 = 在程式裡的意思是「把右一邊的值放進左一邊的盒子」,不是數學上的「兩邊相等」。所以 x = x + 1 在數學上荒謬,在程式裡卻完全正常——意思是「取出 x 的值,加 1,再放回 x」。
  4. 向用戶取得資料input() 指令讓程式與用戶對話。寫 name = input('你叫什麼名字?'),螢幕會顯示括號內的問題,用戶鍵入的文字便存入 name 這個盒子;用戶輸入小明,之後 print(name) 便顯示小明。特別注意:input() 返回的一切都是字串(文字),即使輸入的是數字。所以 age = input('歲數?') 之後,age 是文字 '12',不能直接拿來加減;要用 int() 轉換:age = int(input('歲數?')),之後 age + 1 才能計算。漏了轉換便會報錯,這是初學者最常遇到的錯誤之一。
  5. 組合示範把三個指令組合成一個完整小程式:

    name = input('你叫什麼名字?')
    age = int(input('你今年幾歲?'))
    print('明年你', age + 1, '歲')

    執行次序:第一行問名字並儲存;第二行問歲數,並把文字轉成整數;第三行把文字與計算結果合併顯示,若輸入 12,便顯示「明年你 13 歲」。這個小程式展示了所有程式的共同骨架:先輸入(input),再處理(計算 age + 1),最後輸出(print),與電腦硬件的輸入、處理、輸出、儲存四大功能互相對應。
  6. 執行與註解程式寫好後要執行才見結果。方法一:把程式儲存為 hello.py(副檔名必須是 .py),開啟命令行,輸入 python hello.py 便會執行;方法二:在網上編輯器直接按 Run 按鈕,初學者建議先用網上版,免卻安裝步驟。以 # 開頭的一行是註解,例如「# 計算明年的歲數」。註解是寫給人看的說明,電腦完全略過不執行,用途是標示每段程式的功能,方便日後自己或同學閱讀。好的習慣是一邊寫一邊加註解,特別是較難理解的計算行,三個月後重看也一目了然。
  7. 常見錯誤與除錯初學 Python 有三個高頻錯誤。第一,引號或括號不配對:print('Hello) 少了收尾引號,電腦顯示 SyntaxError;對策是每打開一個括號或引號,立即補上另一半。第二,字串與數字混淆:age = input() 之後直接寫 age + 1 會報 TypeError,因為文字不能加數字;解法是 age = int(input())。第三,名稱打錯:定義了 name 卻寫 print(nam),出現 NameError;Python 的變數名大小寫敏感,Name 和 name 是兩個不同的名字。看到錯誤訊息不要慌張:先看錯誤類型,再看行號,多數情況下能立刻找到問題所在。

4圖解 Diagrams

Python 第一行:print() Python basicsprint("你好,世界!")螢幕輸出:你好,世界!print()顯示括號入面嘅內容引號 ""包住文字(字串)括號 ()話俾 print 執行咩任務Python 係文字程式語言:寫錯一個引號都會 error——細心係基本功try it:改入面嘅字,印自己個名——第一個作品就係咁簡單
圖 1:Python 第一行程式

5例題示範 Example

例題:以下三行程式輸出什麼?第一行:x = 5;第二行:x = x + 3;第三行:print(x)

  1. 第一行:盒 x 裝住 5
  2. 第二行:拿出 5、加 3 得 8,再放回入 x(舊值 5 被覆蓋)
  3. 第三行:顯示 x 的現值
  4. 重點:= 是「放入」— 右邊先計好,再存入左邊的盒
  5. 答案:輸出 8。變數可以覆蓋舊值 — 以最後放入的為準。

6常見錯誤 Mistakes

✗ 寫 print(Hello) 沒有引號。
✓ 文字一定要加引號:print('Hello');不加的話 Python 會當它是變數名,報 NameError 錯誤。
✗ 「x = 5 是說 x 等於 5。」
✓ 在 Python,= 是「把右邊的值放入左邊的盒」;判斷相等要用 ==(下一課詳講)。
✗ input 收回來立即拿來做加法。
✓ input 收到的是字串:'5' + 3 會報錯;要用 int() 轉成整數才能計算。
✗ 用中文全形括號或引號寫程式,例如 print('Hello')。
✓ 程式碼必須使用英文半形符號:print('Hello');全形的( )、引號會導致 SyntaxError。

75 題快測 Quick check

Q1print('5') 和 print(5) 有什麼分別?

Q2寫一行 Python,把 10 存入變數 score。

Q3input() 返回的資料是什麼類型?想計數要怎麼做?

Q4寫一行 Python,讀入用戶輸入的年齡並轉成整數,存入變數 age。

Q5以 # 開頭的一行是什麼?電腦會執行它嗎?

8重點回顧 Recap

  • Python 一行行由上至下執行
  • print() 顯示;文字加引號、數字不用
  • 變數=有名盒子:x = 5 是「放入」,不是「相等」
  • input() 收字串;計數前要 int() 轉換
  • 輸入 → 處理 → 輸出:寫程式與硬件運作同一思路

同級其他科

同一科其他級別