当前位置: 首页 > news >正文

Dataclass

什么是Dataclass

dataclass 是 Python 3.7+ 中引入的一个装饰器,它的主要目的是简化类的创建,特别是那些主要用于存储数据的类。在没有 dataclass 之前,如果你要创建一个简单的数据类,通常需要手动编写很多样板代码,比如:

class Student:

​ def _init_(self, name: str, age: int, student_id: str):

​ self.name = name

​ self.age = age

​ self.student_id = student_id

​ def _repr_(self):

​ return f"Student(name={self.name}, age={self.age}, student_id={self.student_id})"

​ def _eq_(self, other):

​ if other.class is self.class:

​ return (self.name, self.age, self.student_id) == (other.name, other.age, other.student_id)

​ return False

Dataclass的作用

@dataclass 是一个类装饰器,它修饰的是类定义。当你在类定义前加上 @dataclass 时,Python 会自动为这个类生成一些特殊方法,包括:

  • __init__(): 初始化方法
  • __repr__(): 对象的字符串表示
  • __eq__(): 对象比较方法
  • __hash__(): 哈希方法(如果所有字段都是可哈希的)
  • 以及其他一些有用的方法
http://www.aitangshan.cn/news/513.html

相关文章:

  • 计算机基础之编程
  • WRC观点:人形机器人五大爆发趋势
  • dotnet X11 获取多屏 edid 信息
  • SEO 快速流量见效的方式-新词
  • 揭开红血球双凹碟形之谜
  • OVS配置CookBook
  • 推荐7本书《MLIR编译器原理与实践》、《ONNX人工智能技术与开发实践》、《AI芯片开发核心技术详解》、《智能汽车传感器:原理设计应用》、《TVM编译器原理与实践》、《LLVM编译器原理与实践》
  • 打开手机 设置:搜索快应用管理--打开,删除其中不是自己安装的APP,可能有好多不是自己安装的
  • 递归因果发现算法与Python实现
  • 镜像地址相关
  • 军用警用无线电加密算法存在严重漏洞,可被轻易破解
  • Mybatis-Plus的InnerInterceptor插件之beforeQuery方法
  • 第二十一天
  • 有限状态自动机理论
  • Mybatis-Plus的InnerInterceptor插件之beforeQuery()
  • xz pixz 的多线程解压缩方法 - tsunchi
  • 苹果容器Apple container是做什么用的?
  • kubernetes-1.32高可用集群部署(kubeadm)
  • 安装pandas和openpyxl
  • pandas用法
  • 第三章 训练初步深入(3)
  • 安装pandas
  • 奥林匹克小丛书小蓝本习题另解或加强(数论卷)(一)
  • 关于磁盘io性能的命令
  • 房屋防水是建筑工程中非常重要的一部分,通常需要根据不同的环境、建筑结构和使用需求来采取相应的防水措施。国家标准对防水工程的要求有详细规定,以下是常见的防水相关国家标准和要求:
  • Hulo 编程语言开发 —— 从源代码到 AST 的魔法转换
  • python中enumerate的作用
  • ly-容斥杂题选讲
  • 前向传播 反向传播
  • Attention 显存计算 推理训练复杂度