變數 (Variable)
2024年9月25日大约 3 分鐘
學習內容:
- 了解什麼是變數與數據類型
- 了解變數如何在記憶體中運作
- 掌握變數命名的基本規則
- 程式碼註解
變數與數據類型 (Variable and Type)
變數是用來儲存數據的名稱。在 Python 中,變數不需要宣告類型,Python 會根據賦值自動識別變數的數據類型。
常見數據類型:
- 整數 (int): 儲存整數值,例如:
10
、-5
- 浮點數 (float): 儲存小數,例如:
3.14
、-0.001
- 字串 (str): 儲存文字或字符,例如:
"Hello, World!"
- 布林值 (bool): 儲存布林值
True
或False
範例
# 宣告不同類型的變數
x = 10 # 整數
y = 3.14 # 浮點數
name = "Alice" # 字串
is_valid = True # 布林值
# 輸出每個變數的類型
print(type(x)) # <class 'int'>
print(type(y)) # <class 'float'>
print(type(name)) # <class 'str'>
print(type(is_valid)) # <class 'bool'>
變數與記憶體 (Variable and Memory)
變數是用來指向記憶體中存放數據的位置。在 Python 中,當你創建變數時,Python 會在記憶體中分配空間,並將變數名稱指向該空間中的數據。Python 記憶體管理採用「自動垃圾回收」,當變數不再使用時,Python 會自動釋放記憶體空間。
範例
# 創建變數
a = 100
b = a
c = 200
print(id(a)) # 輸出變數 a 的記憶體位置
print(id(b)) # 輸出變數 b 的記憶體位置 (與 a 相同,因為 b 是 a 的拷貝)
print(id(c)) # 輸出變數 c 的記憶體位置 (與 a, b 不同)
變數命名規則 (Name Your Variable)
變數名稱應該具備描述性,這樣有助於提高程式的可讀性。變數命名時需要遵循以下規則:
- 只能包含字母、數字及下劃線
_
。 - 變數名稱不能以數字開頭。
- 大小寫敏感(
myVar
和myvar
是兩個不同的變數)。 - 不可使用 Python 的保留字(如
if
,while
,return
等)。
範例
# 合法的變數命名
age = 25
height_in_meters = 1.75
is_student = True
# 不合法的變數命名 (會導致錯誤)
# 2nd_place = "Silver" # 不能以數字開頭
# if = 10 # 不能使用保留字
Python3 的保留字 (截至 2023 年的版本)
False await else import pass None break except in raise True class finally is return and continue for lambda try as def from nonlocal while assert del global not with async elif if or yield
註解 (Comments)
註解是用來解釋程式碼的部分,不會被 Python 解釋執行。可以使用 #
來添加單行註解。多行註解則可以使用三個單引號或雙引號。
範例
# 單行註解:這是一個簡單的 if 語句
x = 10
'''
多行註解範例:
這裡可以放置多行的解釋內容,
以下程式碼會輸出 x 的值
'''
print(x)
練習 1
以下哪些是無效的變數名稱?
None, yes, lambda, form, del, 3x, good, me-too, group, classPython 支援複數(complex)型態,請找出其用法,並指出以下敘述有何錯誤:
x = 1+j