Python 入門(二):變數不是箱子,是你替世界取的名字

在上一篇裡,我們談的不是語法,而是一件更根本的事:
你是在對電腦下指令,而不是在施展魔法。

現在,我們要進入你學程式後,第一個真正會影響你之後走多遠的概念——
變數(variable)。

很多人學變數,從一開始就學錯了

你可能看過這種教法:

python

然後老師告訴你:
「a 是變數,b 是變數,c 也是變數。」

問題是——
這樣你只會記住語法,卻不知道自己在幹嘛。

變數不是箱子,是「命名」

我們先換一個角度。

當你寫這行:

python

你不是在做「存資料」這件事。
你真正做的是:

告訴電腦:從現在開始,age 這個名字,代表 18。

這是一件非常人類的行為。
因為人類理解世界,本來就是靠「命名」。

為什麼命名這件事這麼重要?

想像一下沒有名字的世界。

你每天都只能說:
「那個…昨天那個…你知道的那個東西。」

程式也是一樣。

電腦其實只看得到數字和資料,
是你用變數,替這些東西取了名字,世界才開始有結構。

一個比較「真實」的例子

來看這段程式碼:

python

這段程式完全沒有新技術
但你一眼就能看懂它在幹嘛。

為什麼?

因為你不是在讀程式,
你是在讀一段被好好命名過的想法


新手最常犯的錯誤:為了省事亂取名

很多人會這樣寫:

python

這段程式碼「可以跑」,
但半年後你自己回來看,很可能會問一句:

「p 是什麼來著?」

這不是技術問題,是溝通問題

請記住一件事:
你未來最常溝通的對象,不是電腦,而是未來的自己。


Python 為什麼不強迫你宣告型別?

你可能聽過其他語言會要求這樣寫:

int age = 18;

但 Python 只要:

python

不是因為 Python 比較隨便,
而是因為它把重點放在一件事上:

你現在想表達什麼意思?

型別是之後的事,
命名與理解,是現在的事。

寫程式,其實是在整理自己的思考

如果你現在卡在變數,很可能不是你不會 Python, 而是你還沒想清楚:

  • 這個東西代表什麼?
  • 它在流程中扮演什麼角色?
  • 我之後還需不需要再用到它?

一旦你能回答這些問題,變數自然就出現了。

在學下一個語法之前,先問自己一個問題

在你寫下任何一個變數前,
試著問自己:

「如果半年後的我看到這個名字,他會懂嗎?」

如果答案是否定的,
那不是你變數取得不好,
而是你對問題的理解還不夠清楚。

下一篇會發生什麼?

下一篇,我們會談一件讓程式「開始有選擇權」的東西:

  • 條件判斷(if / else)

那時候,你不只是下指令,
你開始告訴電腦:

「在不同情況下,該怎麼做。」

但在那之前,
請先確定一件事:

你已經學會替世界取名字了。

Python 入門(二):變數不是箱子,是你替世界取的名字 · 南宮柳信|柳白