当我们需要将任意Python对象转化为基本数据类型时,可以使用val()
函数。
使用方法:
val(obj)
参数:
- obj:必选参数,表示要转化的Python对象。
返回值:
将Python对象转化为基本数据类型。
其中,val()
函数根据对象类型,返回不同的基本数据类型,如下所示:
类型 | 返回值 |
---|---|
数字类型 | 对应的数字类型 |
字符串 | 使用eval()函数将字符串转成对应的Python表达式进行计算,并将结果转为数字类型 |
布尔类型 | False -> 0, True -> 1 |
可迭代对象 | 统计元素个数后返回其对应的数字类型 |
其他对象 | 抛出TypeError |
示例1:将字符串转化为数字类型
a = val("123")
print(type(a)) # 输出<class 'int'>
示例2:将可迭代对象转化为数字类型
a = val([1, 2, 3])
print(a) # 输出3
需要注意的是,有些对象并不能被val()
函数转化为基本数据类型,比如下面的例子:
a = {"name": "Tom", "age": 20}
val(a) # 输出TypeError
在这种情况下,Python会抛出TypeError类型的错误。