Python type函数详解

在 Python 中,type() 是一个内置函数,有两种主要用途:

  1. 返回对象的类型 (最常用)
  2. 动态创建新的类 (元类用法)

1. 获取对象类型

当你向 type() 传递一个参数时,它会返回该参数的数据类型(即对象所属的类)。

语法

python

复制代码
type(object)

示例

python

复制代码
print(type(123))          # <class 'int'>
复制代码
print(type(3.14))         # <class 'float'>
复制代码
print(type("hello"))      # <class 'str'>
复制代码
print(type([1, 2, 3]))    # <class 'list'>
复制代码
print(type((1, 2)))       # <class 'tuple'>
复制代码
print(type({'a': 1}))     # <class 'dict'>
复制代码
print(type(True))         # <class 'bool'>
复制代码
print(type(None))         # <class 'NoneType'>
复制代码
复制代码
# 自定义类的对象
复制代码
class MyClass:
复制代码
    pass
复制代码
复制代码
obj = MyClass()
复制代码
print(type(obj))          # <class '__main__.MyClass'>

2. 动态创建类(元类用法)

当 type() 被传入三个参数时,它会动态地创建一个新的类。这相当于使用 class 语句,但允许在运行时生成类。

语法

python

复制代码
type(name, bases, dict)
  • name:新类的名称(字符串)。
  • bases:一个元组,包含新类继承的基类。
  • dict:一个字典,包含新类的属性和方法(名称映射到实现)。

示例

python

复制代码
# 定义一个类,等价于:
复制代码
# class MyClass:
复制代码
#     x = 5
复制代码
#     def show(self):
复制代码
#         print(self.x)
复制代码
MyClass = type('MyClass', (), {'x': 5, 'show': lambda self: print(self.x)})
复制代码
复制代码
obj = MyClass()
复制代码
print(obj.x)       # 5
复制代码
obj.show()         # 5
相关推荐
alicema11118 分钟前
BRAIN 研究顾问(Research Consultant)兼职
python·量化
元Y亨H13 分钟前
Python,单引号和双引号有何区别
python
超神熊猫27 分钟前
🧀🧀🧀前端仔如何快速上手python
前端·python
卷无止境39 分钟前
Flet 完全教程:用纯 Python 构建跨平台应用
前端·python
北冥you鱼1 小时前
Go语言与默克尔树:区块链数据完整性的基石
开发语言·golang·区块链
量化吞吐机1 小时前
2026年AI量化工具评估,先分开学习开发和验证
人工智能·python
库克克1 小时前
【C++】类和对象--this指针详解
java·开发语言·c++
JackieZhengChina1 小时前
image-viewer-js 开源图片查看插件完整教程
开发语言·javascript·开源
光影少年1 小时前
react的View/Text/Image/ScrollView 常用组件注意事项
开发语言·前端·javascript·react.js·前端框架
白帽小阳2 小时前
Typora插件开发指南:打造专属IDE式写作环境
c语言·网络·python·网络安全·github·pygame·护网行动