📜  如何在Python 3 中转换数据类型?

📅  最后修改于: 2022-05-13 01:55:05.870000             🧑  作者: Mango

如何在Python 3 中转换数据类型?

先决条件: Python数据类型

类型转换是将一种数据类型转换为另一种数据类型的过程。 Python中可以有两种类型的类型转换——

  • 隐式类型转换
  • 显式类型转换

隐式类型转换

它是一种类型转换,其中句柄自动将一种数据类型转换为另一种数据类型,而无需任何用户参与。

例子:

Python3
# Python program to demonstrate
# implicit type conversion
 
# Python automatically converts
# a to int
a = 5
print(type(a))
 
# Python automatically converts
# b to float
b = 1.0
print(type(b))
 
# Python automatically converts
# c to int as it is a floor division
c = a//b
print(c)
print(type(c))


Python3
# Python program to demonstrate
# type conversion of number to
# string
 
a = 10
 
# Converting number to string
s = str(a)
print(s)
print(type(s))


Python3
s = "GFG"
n = 50
 
print("String: " + s + "\nNumber: " + str(n))


Python3
# Python program to demonstrate
# type conversion of string to
# number
 
s = '50'
 
# Converting to int
n = int(s)
print(n)
print(type(n))
 
# Converting to float
f = float(s)
print(f)
print(type(f))


Python3
# Python program to demonstrate
# floating point to integer
 
f = 10.0
 
# Converting to integer
n = int(f)
print(n)
print(type(n))


Python3
# Python program to demonstrate
# integer to float
 
n = 10
 
# Converting to float
f = float(n)
print(f)
print(type(f))


Python3
# Python program to demonstrate
# type conversion between list
# and tuples
 
t = (1, 2, 3, 4)
l = [5, 6, 7, 8]
 
# Converting to tuple
T = tuple(l)
print(T)
print(type(T))
 
# Converting to list
L = list(t)
print(L)
print(type(L))


输出:



5.0

在上面的示例中,可以看出Python会自动处理所有类型转换,无需任何用户参与。

显式类型转换

在显式类型转换中,需要用户参与。用户根据自己的需要将一种数据类型转换为另一种数据类型。这可以在 str()、int()、float() 等函数的帮助下完成。让我们看看各种类型转换的处理。

使用字符串进行类型转换

字符串通常是一个或多个字符的序列。我们经常需要将字符串转换为数字,反之亦然。让我们详细看看它们中的每一个。

将数字转换为字符串

可以使用 str()函数将数字转换为字符串。为此,将一个数字或包含数值的变量传递给此函数。

例子:

Python3

# Python program to demonstrate
# type conversion of number to
# string
 
a = 10
 
# Converting number to string
s = str(a)
print(s)
print(type(s))

输出:

10

当我们想将一些包含数字的字符串打印到控制台时,这可能很有用。考虑下面的例子。

例子:

Python3

s = "GFG"
n = 50
 
print("String: " + s + "\nNumber: " + str(n))

输出:

String: GFG
Number: 50

将字符串转换为数字

可以使用 int() 或 float() 方法将字符串转换为数字。为此,将包含数值的有效字符串传递给这些函数中的任何一个(取决于需要)。

注意:如果 传递一个不包含数值的字符串,然后引发错误。

例子:

Python3

# Python program to demonstrate
# type conversion of string to
# number
 
s = '50'
 
# Converting to int
n = int(s)
print(n)
print(type(n))
 
# Converting to float
f = float(s)
print(f)
print(type(f))

输出:

50

50.0

数字类型转换

Python中基本上有两种类型的数字——整数和浮点数。经常需要从一种类型更改为另一种类型。让我们详细看看他们的转换。

浮点数转整数

可以使用 int()函数将浮点数转换为整数。为此,在 int() 方法中传递一个浮点数。

例子:

Python3

# Python program to demonstrate
# floating point to integer
 
f = 10.0
 
# Converting to integer
n = int(f)
print(n)
print(type(n))

输出:

10

整数转浮点

可以使用 float() 方法将整数转换为浮点数。为此,请在 float() 方法中传递一个整数。

例子:

Python3

# Python program to demonstrate
# integer to float
 
n = 10
 
# Converting to float
f = float(n)
print(f)
print(type(f))

输出:

10.0

Tuple 和 List 之间的类型转换

在Python中,元组和列表都可以相互转换。它可以通过使用 tuple() 和 list() 方法来完成。请参阅以下示例以更好地理解。

例子:

Python3

# Python program to demonstrate
# type conversion between list
# and tuples
 
t = (1, 2, 3, 4)
l = [5, 6, 7, 8]
 
# Converting to tuple
T = tuple(l)
print(T)
print(type(T))
 
# Converting to list
L = list(t)
print(L)
print(type(L))

输出:

(5, 6, 7, 8)

[1, 2, 3, 4]