python3类型转换 – Python3教程

上一章Python教程请查看:python3数据类型
【python3类型转换 – Python3教程】在本文中,你将了解类型转换和类型转换的使用。
在学习Python中的类型转换之前,你应该了解Python数据类型。
类型转换:将一种数据类型(整数、字符串、浮点数等)的值转换为另一种数据类型的过程称为类型转换,Python有两种类型的类型转换。

  • 隐式类型转换
  • 显式类型转换
隐式类型转换:在隐式类型转换中,Python自动将一种数据类型转换为另一种数据类型,这个过程不需要任何用户参与。
让我们来看一个示例,在这个示例中,Python将较低的数据类型(整数)转换为较高的数据类型(浮点数),以避免数据丢失。
例1:将整数转换为浮点数
num_int = 123 num_flo = 1.23num_new = num_int + num_floprint("num_int的类型:",type(num_int)) print("num_flo的类型:",type(num_flo))print("num_new的值:",num_new) print("num_new的值:",type(num_new))

在上面的程序中,
  • 我们添加两个变量num_int和num_flo,将值存储在num_new中。
  • 我们将分别查看这三个对象的数据类型。
  • 在输出中,我们可以看到num_int的数据类型是一个整数,num_flo的数据类型是一个浮点数。
  • 此外,我们可以看到num_new具有浮点数据类型,因为Python总是将较小的数据类型转换为较大的数据类型,以避免数据丢失。
现在,让我们尝试添加一个字符串和一个整数,看看Python如何处理它。
示例2:添加字符串(上)数据类型和整数(下)数据类型
num_int = 123 num_str = "456"print("num_int的数据类型:",type(num_int)) print("num_str的数据类型:",type(num_str))print(num_int+num_str)

在上面的程序中,
  • 我们添加两个变量num_int num_str。
  • 从输出中,我们可以看到我们得到typeerror,Python是不能在这种情况下使用隐式转换。
  • 然而Python这种情况的解决方案是显式转换。
显式类型转换:在显式的类型转换,用户对象的数据类型转换为所需的数据类型。我们使用预定义的函数像int(),float(),str()等执行显式的类型转换。
这类型转换也被称为类型转换,因为用户强制转换(更改)对象的数据类型。
语法:
(required_datatype)(expression)

可以通过将所需的数据类型函数分配给表达式来进行类型转换。
示例3:使用显式转换添加字符串和整数
num_int = 123 num_str = "456"print(" num_int的数据类型:",type(num_int)) print("强制转换之前num_str 的数据类型,type(num_str))num_str = int(num_str) print("num_str的数据类型:",type(num_str))num_sum = num_int + num_strprint("num_int + num_str:",num_sum) print("sum的数据类型:",type(num_sum))

在以上程序中,
  • 我们添加了num_str和num_int变量。
  • 我们使用int()函数将num_str从string(higher)类型转换为integer(lower)类型来执行加法。
  • 将num_str转换为整数值后,Python可以添加这两个变量。
  • 我们将num_sum值和数据类型设置为integer。
注意事项:1、类型转换是将对象从一种数据类型转换为另一种数据类型。
2、隐式类型转换由Python解释器自动执行。
3、Python避免了隐式类型转换中的数据丢失。
4、显式类型转换也称为类型转换,对象的数据类型由用户使用预定义的函数进行转换。
5、在类型转换中,当我们将对象强制为特定的数据类型时,可能会发生数据丢失。

    推荐阅读