Python 中的类型转换

pythonprogrammingserver side programming更新于 2024/3/26 16:55:00

使用 Python,我们可以轻松地将数据转换为不同类型。类型转换有不同的函数。我们可以将字符串类型对象转换为数值,在不同容器类型之间进行转换等。

在本节中,我们将了解如何使用 Python 进行转换。

将字符串转换为数字类型

要将字符串类型对象转换为数字对象,有不同的方法,如 int()、float() 等。使用 int() 方法,我们可以将任何数字作为字符串转换为整数值(基数为 10)。它接受字符串类型参数,默认基数为 10,我们还可以指定基数,以将该基数的字符串转换为十进制数。

类似地,使用 float() 方法,可以将包含十进制形式的值的字符串转换为浮点数。

示例代码

str_number = '56'
print(int(str_number)) #默认基数为 10
print(int(str_number, 16)) #从十六进制
print(int(str_number, 12)) #从基数为 12 的数字
str_number = '25.897'
print(float(str_number)) #将字符串转换为浮点值

输出

56
86
66
25.897

字符串到字符的转换和进制转换

众所周知,字符串是字符的集合。但在 Python 中,我们无法直接获取字符的 ASCII 值。我们需要使用 ord() 方法将字符转换为其 ASCII 值。

还有一些其他方法,如 hex()、ord()、bin(),分别将十进制数转换为十六进制、八进制、二进制数。

示例代码

print('"G"的 ASCII 值为:' + str(ord('G')))
print('254 的十六进制值为:' + str(hex(254)))
print('62 的八进制值为:' + str(oct(62)))
print('56 的二进制值为:' + str(bin(56)))

输出

"G"的 ASCII 值为:71
254 的十六进制值为:0xfe
62 的八进制值为:0o76
56 的二进制值为:0b111000

转换容器

在 Python 中,有不同类型的容器类型对象,例如列表、元组、集合等。我们可以使用 list()、tuple()、set() 等将一种类型的容器更改为另一种类型的容器。

示例代码

my_list = [10, 20, 30, 40, 50]
my_set = {10, 10, 20, 30, 20, 50, 20}
print('从列表到元组:' + str(tuple(my_list)))
print('从列表到集合:' + str(set(my_list)))
print('从集合到列表:' + str(list(my_set)))

输出

从列表到元组:(10, 20, 30, 40, 50)
从列表设置为:{40, 10, 50, 20, 30}
从集合到列表:[10, 20, 50, 30]

复数

在 Python 中有复数类。因此,使用它,我们可以将两个整数(实部和虚部)转换为复数。

示例代码

my_complex = complex(10, 5) #转换为复数
print(my_complex)

输出

(10+5j)

元组到字典

元组是 Python 中最重要的容器之一。使用元组,我们可以存储一些有序数据。在 Python 中,我们可以将具有两个值的 Tuple 类型对象转换为字典对象。dict() 方法可以完成此转换。

示例代码

my_tuples = (('Tiger', 4), ('Cat', 6), ('Dog', 8), ('Elephant', 10))
my_dict = dict(my_tuples)
print(my_dict)

输出

{'Tiger': 4, 'Elephant': 10, 'Dog': 8, 'Cat': 6}

相关文章