购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.14 泛型

泛型类型允许我们定义可以处理不同数据类型的类、函数或方法,而无须事先指定确切的数据类型。当我们想要创建一个可以处理多种数据类型的单个实现时,这很有用。

要在Python中定义泛型类型,我们可以使用内置的模块typing,它为Python 3.5及更新版本提供了一组类型提示。typing模块定义了许多泛型类型,如List、Tuple、Dict和Union,这些类型可用于定义泛型函数、方法和类。

在生活中,一般把同一个容器存放同一类东西,例如,棉签盒专门用来放棉签,糖果盒专门用来放糖果。可以使用泛型来检查集合中存储的数据类型,例如,List<str>指定放字符串。

在这个基本示例中,我们将定义一个可以处理不同类型列表的泛型函数:

定义一个可以使用不同类型值的泛型类:

创建一个通用的数据存储库类,该类可以处理不同的数据类型。

DataRepository类使用泛型类型T来定义存储库可以存储的数据类型。泛型类型T确保添加到存储库的数据是正确的类型,泛型返回类型List[T]确保从存储库检索的数据也是正确的类型。 CdIAQhpsjtjng7QuxZU4JxIP4fB2izSIg3yWE1840gpgWuPBBtcxd2LRiYH60VDO

点击中间区域
呼出菜单
上一章
目录
下一章
×