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}