在Python中的类型转换
在本教程中,我们将学习Python中的类型转换。
我们经常遇到涉及多种数据类型的算术运算,然后得到相应的结果。
在这里我们将讨论两种情况:
- 隐式类型转换
- 显式类型转换
让我们通过程序了解它们-
隐式类型转换
在隐式类型转换期间,用户不需要在转换过程中指定任何特定的数据类型。
以下程序示例说明了如何在Python中实现它。
#program to demonstrate implicit type conversion
#initializing the value of a
a = 10
print(a)
print("The type of a is ", type(a))
#initializing the value of b
b = 4.5
print(b)
print("The type of b is ", type(b))
#initializing the value of c
c = 4.0
print(c)
print("The type of c is ", type(c))
#initializing the value of d
d = 5.0
print(d)
print("The type of d is ", type(d))
#performing arithmetic operations
res = a * b
print("The product of a and b is ", res)
add = c + d
print("The addition of c and d is ", add)
输出:
10
The type of a is <class 'int'>
4.5
The type of b is <class 'float'>
4.0
The type of c is <class 'float'>
5.0
The type of d is <class 'float'>
The product of a and b is 45.0
The addition of c and d is 9.0
解释-
让我们来看一下这个程序的解释。
- 为了检查值在执行操作时是如何转换的,我们初始化了变量a、b、c和d的值。
- 然后,我们检查了每个变量的数据类型。
- 最后,我们对变量a和b执行加法操作,对变量c和d执行乘法操作。
- 在执行上述程序时,我们可以观察到在乘法的情况下,最终结果是一个浮点数(a是整数,b是浮点数)。
现在,是时候转向下一个内容了,也就是显式类型转换。
显式类型转换
在这种类型转换中,用户需要在函数中传入值以获得所需的数据类型。
int()、float()和str() 在显式类型转换中被广泛使用。
考虑下面给出的程序,
#program to demonstrate explicit type conversion
#initializing the value of a
a=10.6
print("The type of 'a' before typecasting is ",type(a))
print(int(a))
print("The type of 'a' after typecasting is",type(a))
#initializing the value of b
b=8.3
print("The type of 'b' before typecasting is ",type(b))
print(int(b))
print("The type of 'b' after typecasting is",type(b))
#initializing the value of c
c=7
print("The type of 'c' before typecasting is ",type(c))
print(float(c))
print("The type of 'c' after typecasting is",type(c))
输出:
The type of 'a' before typecasting is <class 'float'>
10
The type of 'a' after typecasting is <class 'float'>
The type of 'b' before typecasting is <class 'float'>
8
The type of 'b' after typecasting is <class 'float'>
The type of 'c' before typecasting is <class 'int'>
7.0
The type of 'c' after typecasting is <class 'int'>
解释 –
让我们理解一下我们在这个程序中做了什么。
- 我们初始化了a、b和c的值。
- 我们在这个程序中使用int()和float()来看看显式类型转换是如何进行的。
- 在执行这个程序时,我们可以验证数据类型如何变化。
最后,让我们来看看这篇文章的最后一个程序,它涵盖了可能的显式类型转换的类型。
#program to demonstrate explicit type conversion
#initializing the value of a
a=10
print("The type of 'a' before typecasting is ",type(a))
print(str(a))
print("The type of 'a' after typecasting is",type(a))
#initializing the value of b
b='8'
print("The type of 'b' before typecasting is ",type(b))
print(int(b))
print("The type of 'b' after typecasting is",type(b))
#initializing the value of c
c='7.9'
print("The type of 'c' before typecasting is ",type(c))
print(float(c))
print("The type of 'c' after typecasting is",type(c))
输出:
The type of 'a' before typecasting is <class 'int'>
10
The type of 'a' after typecasting is <class 'int'>
The type of 'b' before typecasting is <class 'str'>
8
The type of 'b' after typecasting is <class 'str'>
The type of 'c' before typecasting is <class 'str'>
7.9
The type of 'c' after typecasting is <class 'str'>
说明-
这种方法与上述程序类似,在此程序中,我们已经包含了使用int()、str()和float()进行转换。
结论
在本教程中,我们学习了Python中的类型转换是什么,它有哪些类型,以及如何在Python中执行类型转换。