• type.Dict 和 Dict 之间的区别及其在 Python 中的用途


    当在 Python 函数中将字典声明为参数时,我们通常会将键和值数据类型声明为全局变量,而不是局部变量。

    如果我们需要将字典键和值的数据类型声明为局部变量怎么办? 本文讨论如何将类型提示与 Typing.Dict 结合使用,并将其与通常的 dict 函数区分开来。


    type.Dict 和 dict 之间的区别及其在 Python 中的用途

    在 Python 函数中将字典声明为参数时,使用 Typing.Dict 和普通 dict 之间没有实际差异。

    然而,typing.Dict函数是一个通用类型函数,它允许我们指定键和值的数据类型,使其更加灵活。

    此外,由于我们无法静态推断通常保存在容器中的对象的类型信息,因此抽象基类已扩展为支持订阅来表示容器元素的常见类型。

    def exampleFunction(typing.Dict[str, int])
    
    • 1

    例如,在项目生命周期的某个时刻,我们想要更精确地定义字典参数,此时将 Typing.Dict 扩展为 Typing.Dict[key_type, value_type] 是比用整个字典替换更小的更改 字典()。

    我们可以通过使用 Mapping 或 MutableMapping 类型使我们的字典更加通用。 字典是一种映射,但我们可以创建满足映射接口的其他对象。

    def exampleFunction(typing.Mapping[str,int])
    
    • 1

    请注意 ,Python 不强制执行类型提示。 它们只是提示,不用于在运行时或编译时实现类型。

    但是,如果我们使用 Python 3.9 及更高版本,Python 已弃用 Typing.Dict,而是在内置 dict() 命令中强制执行类型提示。 我们可以在Python中声明字典时指定类型。

    def exampleFunction(dict[str,int])
    
    • 1
  • 相关阅读:
    第十八章:Swing自述
    Web 自动化神器 TestCafe—页面基本操作篇
    估计流量矩阵的方法
    Redis支撑秒杀场景的关键技术和实践都有哪些?
    Vuex 状态管理
    EM算法公式推导
    pythony异常处理/catalan数和出栈排列数
    Java代码审计安全篇-XXE(XML外部实体注入)漏洞
    [附源码]计算机毕业设计智能家电商城Springboot程序
    Java高级特性-泛型继承与子类型
  • 原文地址:https://blog.csdn.net/fengqianlang/article/details/133864222