You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python中使用type函数动态创建类型注解?

用type函数动态创建带类型注解的类

Python里类的类型注解会被存放在类的__annotations__字典属性中,所以用type动态创建类时,只需要在第三个参数(类属性字典)里添加这个字段就能实现类型注解的定义。

基础示例对比

静态定义带类型注解的类:

class A:
    a: str

用type动态实现的等价写法:

A = type('A', (), {'__annotations__': {'a': str}})

同时包含普通属性和类型注解

如果需要同时定义普通赋值的属性和仅带类型注解的字段,比如:

class C:
    b = 123
    c: float

对应的动态创建代码:

C = type('C', (), {'b': 123, '__annotations__': {'c': float}})

验证正确性

你可以通过打印类的__annotations__属性来确认类型注解已被正确添加:

print(A.__annotations__)  # 输出: {'a': <class 'str'>}
print(C.__annotations__)  # 输出: {'c': <class 'float'>}

这种方式完全可以满足你提到的场景——工具可以正常读取类的__annotations__来生成测试代码或API调用。

内容的提问来源于stack exchange,提问作者Clément Dato

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 15:39:51