欢迎访问宙启技术站
智能推送

Python内置函数之type()——对象类型函数

发布时间:2023-06-01 23:36:10

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的子类的一个实例。