1. type()函数和isinstance()函数
Python中type(obj)函数和isinstance(obj, class_or_tuple)函数都可以用来判断对象obj的数据类型。
而type(obj)函数和isinstance(obj, class_or_tuple)函数的区别是:
- isinstance()函数会认为子类对象是一种父类类型。
- type()函数不会认为子类对象是一种父类类型。
2. int类型和bool类型
int和bool是Python中的两个常用数据类型。那么二者在使用的过程中存在哪些区别和联系呢?
- 如果将布尔值进行数值运算,True被当作整数1,False被当作整数0。
- bool类型是int类型的子类,因此,当用isinstance(False, int)函数判断类型时,结果为True。
因此,当我们判断某个变量x是否为int类型时要注意了,用type(x)==int而不要用isinstance(x, int)去做判断。