Python 是一種動態類型語言,變量類型在運行時自動確定,無需顯式聲明。以下是 Python 中核心變量類型的分類與用法詳解:
一、基本數據類型
1. 數值類型
-
整數 (int)
支持正負數、零和二進制/八進制/十六進制表示:a = 42 b = 0o52 # 八進制 => 42 c = 0x2A # 十六進制 => 42
-
浮點數 (float)
支持科學計數法:pi = 3.14159 big_num = 1.2e6 # 1200000.0
-
復數 (complex)
由實部和虛部組成:c = 3 + 4j
2. 布爾型 (bool)
- 只有
True
和False
兩個值 - 邏輯運算結果:
is_valid = (5 > 3) and (10 != 8) # True
3. 字符串 (str)
- 支持單引號、雙引號、三引號:
s1 = 'Hello' s2 = "World" s3 = '''Multi-line string'''
- 不可變對象,常用操作:
text = "Python" print(text[0]) # 'P' (索引) print(text[1:4]) # 'yth' (切片) print("thon" in text) # True (成員檢查)
二、復合數據類型
1. 列表 (list)
- 有序、可變、允許重復元素:
numbers = [1, 2, 3, 2] numbers.append(4) # 末尾添加 numbers[0] = 100 # 修改元素
2. 元組 (tuple)
- 有序、不可變、允許重復元素:
point = (3, 4) x, y = point # 解包賦值
3. 字典 (dict)
- 鍵值對存儲,鍵唯一且不可變:
person = {"name": "Alice","age": 30,"is_student": False } print(person["name"]) # 訪問值 person["city"] = "Paris" # 添加新鍵值對
4. 集合 (set)
- 無序、唯一元素集合:
unique_nums = {1, 2, 2, 3} # 自動去重 => {1, 2, 3}
三、特殊類型
1. None 類型
- 表示空值或缺失值:
result = None # 初始未定義狀態
2. 字節類型
bytes
:不可變字節序列bytearray
:可變字節序列data = b'Hello' # bytes mutable_data = bytearray(b'World')
3. 函數/方法
- 函數可作為一等公民傳遞:
def add(a, b):return a + b func_ref = add # 變量指向函數 print(func_ref(3, 5)) # 8
四、類型操作
1. 類型檢查
type()
返回具體類型:print(type(42)) # <class 'int'>
isinstance()
檢查繼承關系:print(isinstance(3.14, float)) # True
2. 類型轉換
- 顯式轉換函數:
num_str = "123" num = int(num_str) # 字符串轉整數
五、動態類型特性
Python 變量可隨時改變類型:
var = 42 # int 類型
var = "Python" # 變為 str 類型
var = [1, 2, 3] # 變為 list 類型
六、類型層級關系
object
├── int
├── float
├── complex
├── str
├── bool
├── list
├── tuple
├── dict
├── set
├── bytes
├── bytearray
├── NoneType
└── function
理解變量類型是編寫高效 Python 代碼的基礎,合理選擇數據類型可優化內存使用和執行效率。對于復雜場景,可結合 typing
模塊進行類型注解(Python 3.5+)。