隐藏页面特效

泛型类Generic注解

在 Python 的 typing 模块中,Generic 是一个泛型类,用于创建参数化的类和函数,以便支持不同类型的参数。它允许你定义具有类型参数的类,这些类型参数在实例化时才确定。这样,你可以在不同的上下文中使用相同的类,但可以使用不同的类型参数。

使用 Generic 可以增强代码的可重用性和灵活性,使得你可以编写更通用的类和函数,而不需要为每个具体的类型重复编写代码。

from typing import TypeVar, Generic T = TypeVar('T') # 定义类型变量 T class Box(Generic[T]): def __init__(self, content: T, items: Iterable[T]): self.content = content self.items = list[T](items) # 创建一个装有整数的盒子 int_box = Box(42, range(5)) print(int_box.content) # 输出: 42 print(int_box.items ) # [0,1,2,3,4] # 创建一个装有字符串的盒子 str_box = Box("Hello, World!", "abcde") print(str_box.content) # 输出: Hello, World! print(str_box.items) # ['a', 'b', 'c', 'd', 'e']

在这个示例中,我们使用 Generic[T] 创建了一个参数化的 Box 类。
T 是一个类型变量,它表示我们在实例化时可以传递的不同类型。我们可以创建装有不同类型的盒子,并在每个盒子实例中访问其内容。

通过使用 Generic,我们可以编写一个通用的 Box 类,它可以用于不同类型的数据,而不需要为每个类型编写单独的类。这提高了代码的可重用性和灵活性。


__EOF__

本文作者404 Not Found
本文链接https://www.cnblogs.com/weiweivip666/p/17664800.html
关于博主:可能又在睡觉
版权声明:转载请注明出处
声援博主:如果看到我睡觉请喊我去学习
posted @   我在路上回头看  阅读(557)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
历史上的今天:
2020-08-29 django中使用celery异步发送邮件
2020-08-29 Celey异步发送邮件时报django.core.exceptions.ImproperlyConfigured的解决办法
2020-08-29 ubantu中安装redis及遇到的问题
2020-08-29 Celery异步处理任务时遇到的错误ValueError: not enough values to unpack (expected 3, got 0)
点击右上角即可分享
微信分享提示