Python教程之類型轉換詳解

Python 定義瞭類型轉換函數以將一種數據類型直接轉換為另一種數據類型,這在日常和競爭性編程中很有用。本文旨在提供有關某些轉換函數的信息。

Python中有兩種類型轉換:

  • 隱式類型轉換
  • 顯式類型轉換

讓我們詳細討論它們。

隱式類型轉換

在 Python 中數據類型的隱式類型轉換中,Python 解釋器會自動將一種數據類型轉換為另一種數據類型,而無需任何用戶參與。要更清楚地瞭解該主題,請參閱以下示例。

例子:

x = 10

print("x is of type:",type(x))

y = 10.6
print("y is of type:",type(y))

z = x + y

print(z)
print("z is of type:",type(z))

輸出:

x is of type: <class 'int'>
y is of type: <class 'float'>
20.6
z is of type: <class 'float'>

正如我們所見,“z”的數據類型自動更改為“float”類型,而一個變量 x 是整數類型,而另一個變量 y 是浮點類型。浮點值沒有被轉換為整數的原因是由於類型提升允許通過將數據轉換為更廣泛的數據類型來執行操作而不會丟失任何信息。這是python中隱式類型轉換的一個簡單案例。

顯式類型轉換

在 Python 中的顯式類型轉換中,數據類型由用戶根據需要手動更改。使用顯式類型轉換,存在數據丟失的風險,因為我們強制在某些特定數據類型中更改表達式。下面解釋瞭各種形式的顯式類型轉換:

1. int(a, base)

此函數將任何數據類型轉換為整數。如果數據類型是字符串, 'Base' 指定字符串的基數。

2. float()

該函數用於將任何數據類型轉換為浮點數

# 使用 int()、float() 演示類型轉換的 Python 代碼

# 初始化字符串
s = "10010"

# 打印字符串轉換為 int base 2
c = int(s,2)
print ("After converting to integer base 2 : ", end="")
print (c)

# 打印字符串轉換為浮點數
e = float(s)
print ("After converting to float : ", end="")
print (e)

輸出:

After converting to integer base 2 : 18
After converting to float : 10010.0

3. ord() : 該函數用於將字符轉換為整數。

4. hex(): 這個函數是將整數轉換為十六進制字符串

5. oct() : 這個函數是將整數轉換為八進制字符串

# 使用 ord()、hex()、oct() 演示類型轉換的 Python 代碼

# 初始化整數
s = '4'

# 打印字符轉換為整數
c = ord(s)
print ("After converting character to integer : ",end="")
print (c)

# 打印整數轉換為十六進制字符串
c = hex(56)
print ("After converting 56 to hexadecimal string : ",end="")
print (c)

# 打印整數轉換為八進制字符串
c = oct(56)
print ("After converting 56 to octal string : ",end="")
print (c)

輸出:

After converting character to integer : 52
After converting 56 to hexadecimal string : 0x38
After converting 56 to octal string : 0o70

6. tuple() : 該函數用於轉換為元組

7. set() : 該函數返回轉換為 set 後的類型

8. list(): 該函數用於將任何數據類型轉換為列表類型

# 使用 tuple()、set()、list() 演示類型轉換的 Python 代碼

# 初始化字符串
s = 'geeks'

# 打印字符串轉換為元組
c = tuple(s)
print ("After converting string to tuple : ",end="")
print (c)

# 打印字符串轉換為設置
c = set(s)
print ("After converting string to set : ",end="")
print (c)

# 打印字符串轉換為列表
c = list(s)
print ("After converting string to list : ",end="")
print (c)

輸出:

After converting string to tuple : ('g', 'e', 'e', 'k', 's')
After converting string to set : {'k', 'e', 's', 'g'}
After converting string to list : ['g', 'e', 'e', 'k', 's']

9. dict() : 該函數用於將順序為 (key,value) 的元組轉換為字典

10. str() : 用於將整數轉換為字符串。

11. complex(real,imag) : 此函數將實數轉換為復數(real,imag)。

# 使用 dict()、complex()、str() 演示類型轉換的 Python 代碼

# 初始化整數
a = 1
b = 2

# 初始化元組
tup = (('a', 1) ,('f', 2), ('g', 3))

# 打印整數轉換為復數
c = complex(1,2)
print ("After converting integer to complex number : ",end="")
print (c)

# 打印整數轉換為字符串
c = str(a)
print ("After converting integer to string : ",end="")
print (c)

# 打印元組轉換為表達式字典
c = dict(tup)
print ("After converting tuple to dictionary : ",end="")
print (c)

輸出:

After converting integer to complex number : (1+2j)
After converting integer to string : 1
After converting tuple to dictionary : {'a': 1, 'f': 2, 'g': 3}

12. chr(number): 該函數將數字轉換為對應的ASCII字符。

# 將 ASCII 值轉換為字符
a = chr(76)
b = chr(77)

print(a)
print(b)

輸出:

LM 
_

到此這篇關於Python教程之類型轉換詳解的文章就介紹到這瞭,更多相關Python類型轉換內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: