【基礎教程】Python數據類型轉換函數大全

雖然 Python 是弱類型編程語言,不需要像 Java 或 C 語言那樣還要在使用變量前聲明變量的類型,但在一些特定場景中,仍然需要用到類型轉換。

比如說,我們想通過使用 print() 函數輸出信息“您的身高:”以及浮點類型 height 的值,如果在交互式解釋器中執行如下代碼:
>>> height = 70.0
>>> print("您的身高"+height)
Traceback (most recent call last):
  File "<pyshell#1>", line 1, in <module>
    print("您的身高"+height)
TypeError: must be str, not float

你會發現這是錯誤的,解釋器提示我們字符串和浮點類型變量不能直接相連,需要提前將浮點類型變量 height 轉換爲字符串纔可以。

慶幸的是,Python 已經爲我們提供了多種可實現數據類型轉換的函數,如表 1 所示。

 

表 1 常用數據類型轉換函數
函 數 作 用
int(x) 將 x 轉換成整數類型
float(x) 將 x 轉換成浮點數類型
complex(real,[,imag]) 創建一個複數
str(x) 將 x 轉換爲字符串
repr(x) 將 x 轉換爲表達式字符串
eval(str) 計算在字符串中的有效 Python 表達式,並返回一個對象
chr(x) 將整數 x 轉換爲一個字符
ord(x) 將一個字符 x 轉換爲它對應的整數值
hex(x) 將一個整數 x 轉換爲一個十六進制字符串
oct(x) 將一個整數 x 轉換爲一個八進制的字符串


需要注意的是,在使用類型轉換函數時,提供給它的數據必須是有意義的。例如,int() 函數無法將一個非數字字符串轉換成整數:

>>> int("123") #轉換成功
123
>>> int("123個") #轉換失敗
Traceback (most recent call last):
  File "<pyshell#3>", line 1, in <module>
    int("123個")
ValueError: invalid literal for int() with base 10: '123個'
>>>

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章