• 隐式类型转换- 自动完成
  • 显式类型转换- 需要使用类型函数来转换

一、隐式类型转换

在隐式类型转换中,Python 会自动将一种数据类型转换为另一种数据类型,不需要我们去干预。 以下实例中,我们对两种不同类型的数据进行运算,较低数据类型(整数)就会转换为较高数据类型(浮点数)以避免数据丢失。

  1. num_int = 123
  2. num_flo = 1.23
  3. num_new = num_int + num_flo
  4. print("datatype of num_int:",type(num_int))
  5. print("datatype of num_flo:",type(num_flo))
  6. print("Value of num_new:",num_new)
  7. print("datatype of num_new:",type(num_new))

二、显式类型转换

在显式类型转换中,用户将对象的数据类型转换为所需的数据类型。 我们使用 int()、float()、str() 等预定义函数来执行显式类型转换。

int() 强制类型转换为整数

  1. x = int(1) # x 输出结果为 1
  2. y = int(2.8) # y 输出结果为 2
  3. z = int("3") # z 输出结果为 3

float() 强制转换为浮点型:

  1. x = float(1) # x 输出结果为 1.0
  2. y = float(2.8) # y 输出结果为 2.8
  3. z = float("3") # z 输出结果为 3.0
  4. w = float("4.2") # w 输出结果为 4.2

str() 强制转换为字符串类型:

  1. x = str("s1") # x 输出结果为 's1'
  2. y = str(2) # y 输出结果为 '2'
  3. z = str(3.0) # z 输出结果为 '3.0'
  1. num_int = 123
  2. num_str = "456"
  3. print("num_int 数据类型为:",type(num_int))
  4. print("类型转换前,num_str 数据类型为:",type(num_str))
  5. num_str = int(num_str) # 强制转换为整型
  6. print("类型转换后,num_str 数据类型为:",type(num_str))
  7. num_sum = num_int + num_str
  8. print("num_int 与 num_str 相加结果为:",num_sum)
  9. print("sum 数据类型为:",type(num_sum))