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

继承内置集合类型时如何避免mypy报错?

解决mypy检查泛型类继承时的类型参数缺失错误

当用mypy检查以下代码时:

class MySpecialList(list):
    # 自定义扩展功能

会触发错误:

my_file.py:42: error: Missing type parameters for generic type "list"  [type-arg]

这不是mypy的bug,因为list是Python的泛型类,继承泛型类时必须明确类型参数,或者让子类也成为泛型类,以下是两种正确处理方式:

  • 固定元素类型场景:如果你的特殊列表只存储某一种特定类型的元素,直接给父类list指定具体类型参数即可:

    class MySpecialList(list[int]):
        # 自定义功能实现
    
  • 支持任意元素类型场景:如果要让子类和原生list一样支持任意类型,需要借助泛型工具让子类也成为泛型类:

    from typing import TypeVar, Generic
    
    T = TypeVar('T')
    
    class MySpecialList(Generic[T], list[T]):
        # 自定义功能实现
    

内容的提问来源于stack exchange,提问作者frans

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 10:53:10