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

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

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


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

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

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

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

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

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

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

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

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

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

def exampleFunction(dict[str,int])

你可能感兴趣的:(Python,实用技巧,python,开发语言)