Python 的内置函数 type() 是一个非常有用的工具函数,主要用于获取对象的类型信息。它可以接受一个参数,并返回该参数所属的数据类型。
基本用法
x = 42
print(type(x)) # 输出: <class 'int'>
y = "Hello"
print(type(y)) # 输出: <class 'str'>详细功能
- 类型查询:
type()最基本的功能是返回对象的类型,返回结果是一个类型对象(type object)。 类检查:可以用于检查变量是否是特定类型:
if type(x) == int: print("x is an integer")动态类型创建:
type()还可以用于动态创建类(三个参数形式),这是 Python 元编程的重要特性之一:MyClass = type('MyClass', (), {'attribute': 42}) obj = MyClass() print(obj.attribute) # 输出: 42
注意事项
- 对于类型检查,通常建议使用
isinstance()函数,因为它考虑了继承关系 type()返回的是对象最直接的类型,不会考虑继承关系- 在 Python 3 中,所有类型都是类的实例,
type()返回的实际上是类的元类
与 isinstance() 的区别
class Parent: pass
class Child(Parent): pass
obj = Child()
print(type(obj) == Parent) # False
print(isinstance(obj, Parent)) # True应用场景
- 调试时快速查看变量类型
- 实现基于类型的条件逻辑
- 元编程中动态创建类
- 编写需要处理多种数据类型的通用函数
type() 是 Python 类型系统的核心函数之一,理解它的工作原理对于掌握 Python 的类型机制非常重要。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。