在 Python 中,隱式型別轉換(implicit type conversion)是指當程式自動將一個資料型別轉換為另一個資料型別,而不需要明確的轉換指令。這通常發生在需要將不同型別的變數進行運算時,Python 會自動處理型別不匹配的問題。
隱式型別轉換的例子
隱式型別轉換通常發生在下列情況:
數字型別的轉換 Python 會在不同數字型別之間進行隱式轉換。例如,整數(int)和浮點數(float)的混合運算會導致整數自動轉換為浮點數,以避免數據丟失。
a = 5 # 整數 (int)
b = 3.2 # 浮點數 (float)
result = a + b # Python 會將 a 自動轉換為 float
print(result) # 輸出: 8.2 (float)
布林值的轉換 在邏輯運算中,Python 會將布林值(True 和 False)隱式轉換為整數 1 和 0
a = True
b = 3
result = a + b # True 會被轉換為 1
print(result) # 輸出: 4
隱式型別轉換的規則
隱式轉換通常遵循「擴展型別」的原則,這表示 Python 會盡可能將較低精度的型別轉換為較高精度的型別,例如:
int 轉換為 float
float 轉換為 complex