Python内置函数之type()——对象类型函数
Python语言自带许多内置函数,其中一个重要的函数是type()函数。type()函数可以用来判断对象的类型,返回一个描述对象类型的字符串。本文将从以下四个方面详细介绍type()函数:1、type()函数的语法;2、type()函数的功能;3、type()函数的示例;4、小结。
## 1.type()函数的语法
type()函数的语法如下:
type(object)
其中,参数object可以是任何Python对象,例如变量、数字、字符串、列表、字典、元组、函数等。type()函数返回的是一个字符串,表示object的数据类型。
## 2.type()函数的功能
type()函数的功能主要有两个:一是判断对象的类型,返回一个表示对象类型的字符串;二是返回类型对象。下面分别介绍这两个功能。
### 2.1 判断对象的类型,返回一个表示对象类型的字符串
type()函数可以判断对象的类型,例如:
print(type(2)) # <class 'int'>
print(type(2.0)) # <class 'float'>
print(type('hello')) # <class 'str'>
print(type([1, 2, 3])) # <class 'list'>
print(type({'name': 'John', 'age': 25})) # <class 'dict'>
print(type((1, 2, 3))) # <class 'tuple'>
print(type(lambda x: x+1)) # <class 'function'>
### 2.2 返回类型对象
type()函数还可以返回类型对象,例如:
print(type(int)) # <class 'type'> print(type(float)) # <class 'type'> print(type(str)) # <class 'type'> print(type(list)) # <class 'type'> print(type(dict)) # <class 'type'> print(type(tuple)) # <class 'type'> print(type(set)) # <class 'type'> print(type(frozenset)) # <class 'type'> print(type(type)) # <class 'type'>
## 3.type()函数的示例
下面用一个简单的例子来说明type()函数的用法。
x = 5
y = 5.0
z = '5'
print(type(x)) # <class 'int'>
print(type(y)) # <class 'float'>
print(type(z)) # <class 'str'>
if type(x) == type(y):
print('x和y类型相同')
else:
print('x和y类型不同')
if type(x) == type(z):
print('x和z类型相同')
else:
print('x和z类型不同')
上述代码中,变量x、y、z分别赋值为整数5、浮点数5.0和字符串'5'。使用type()函数判断它们的类型,并用条件语句判断它们之间的类型关系。
输出结果为:
<class 'int'> <class 'float'> <class 'str'> x和y类型不同 x和z类型不同
## 4.小结
type()函数是Python内置的一个重要函数,主要用来判断对象的数据类型,返回一个表示对象类型的字符串。type()函数的语法格式为"type(object)",其中object可以是任何Python对象。除了判断对象的类型,type()函数还可以返回类型对象。
需要注意的是,type()函数在判断一些特殊类型时可能会有限制。例如,对于自定义的类SomeClass,type(SomeClass)返回的是<class 'type'>,而不是<class '__main__.SomeClass'>。此时可以使用isinstance()函数来判断对象类型,isinstance(obj, cls)会判断obj是否为cls或cls的子类的一个实例。
