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

网站设计师培训学校永久持续更新

网站设计师培训学校,永久持续更新,wordpress快速安装,开发银行助学贷款系统dataclass 是 Python dataclasses 模块中的一个 decorator。当使用 dataclass 装饰器时#xff0c;它会自动生成一些特殊方法#xff0c;包括#xff1a; _ _ init _ _#xff1a;用于初始化字段的构造函数_ _ repr _ _#xff1a;对象的字符串表示_ _ eq _ _#xff1a…dataclass 是 Python dataclasses 模块中的一个 decorator。当使用 dataclass 装饰器时它会自动生成一些特殊方法包括 _ _ init _ _用于初始化字段的构造函数_ _ repr _ _对象的字符串表示_ _ eq _ _对象之间的相等比较_ _ hash _ _使对象可用作字典键如果值是可哈希的 除了上述列出的方法之外dataclass 装饰器还有两个重要的属性。 Order顺序如果为 True默认为 False将生成 [__lt__()](https://docs.python.org/3/reference/datamodel.html#object.__lt__)、[__le__()](https://docs.python.org/3/reference/datamodel.html#object.__le__)、[__gt__()](https://docs.python.org/3/reference/datamodel.html#object.__gt__) 和 [__ge__()](https://docs.python.org/3/reference/datamodel.html#object.__ge__) 方法即 dataclass(orderTrue)。Immutability不可变性通过使用 frozenTrue 参数可以使字段变为不可变即 dataclass(frozenTrue)。 简而言之dataclass 装饰器的主要目标是简化类的创建。 dataclass 装饰器的优势 使用 dataclass 装饰器有几个优势 减少样板代码通过自动生成常见特殊方法减少类所需的样板代码。可读性通过使代码更简洁集中在数据表示上提高了代码的可读性。默认值可以直接在类定义中为属性提供默认值减少了显式 __init__() 方法的需求。不可变性通过将 dataclass 与 frozenTrue 选项结合使用可以创建不可变的数据类确保实例在创建后无法修改。 用法 from dataclasses import dataclassdataclass class Person:name: strage: int在这个例子中Person 类被注解为 dataclass并声明了两个字段name 和 age。__init__()、__repr__()、__eq__() 和 __hash__() 方法会自动生成。下面是如何使用每个生成的方法的解释 __init__(self, ...)**__init__ 方法会自动生成参数对应于被注释属性。可以通过为属性提供值来创建类的实例。 person Person(Sam, 45)__repr__(self) - str__repr__ 方法返回对象的字符串表示用于调试和记录。在打印对象或在 f-string 中使用时将调用 __repr__ 方法。 person # Person(nameSam, age45)__eq__(self, other) - bool__eq__ 方法根据属性检查两个对象是否相等。在使用等号运算符 () 比较对象时使用。 # 用法 person1 Person(Sam, 45) person1person2 Person(Sam, 46) person2print(person1 person2) # False。 __hash__(self) - int__hash__ 方法为对象生成哈希值允许实例用作集合和字典中的键。当类用作字典中的键或集合中的元素时需要这个方法。 顺序 如果包括 orderTrue 选项将生成额外的顺序方法__lt__、__le__、__gt__ 和 __ge__。这些方法允许使用小于、小于或等于、大于和大于或等于运算符比较实例。如果在没有 order 的情况下对 Person 对象进行比较将引发 TypeError。 添加顺序后我们可以执行比较。 order 默认为 False这意味着除非显式启用否则不会生成比较方法。比较基于字段值而不是对象标识。 不可变性 使用 frozenTrue 属性可以使 dataclass 不可变默认为 False。 在上面的代码中我们能够重新分配值给 Person 的 name 字段。添加 frozenTrue 后将引发异常不允许重新分配。 注意性能影响frozenTrue 会增加轻微的开销因为需要额外检查不可变性。 总结 使用 dataclasses 模块我们可以在类定义中为字段分配默认值。 默认值可以是任何数据类型包括其他数据类或可变对象。它们在定义类时仅计算一次而不是每次创建实例时。
http://www.dnsts.com.cn/news/274430.html

相关文章:

  • 做一个网站建设电商网站建设包括哪些内容
  • 广州网站建设模板制作外贸单子怎么找
  • 萝岗免费网站建设微信公众号推广链接
  • 求助如何做网站推广石家庄网站推广报价
  • 做交通招聘的网站做短视频网站需要审批
  • 网站建设业务范围perl 网站开发
  • 重庆巴南网站制作做亚马逊网站的账务处理
  • 网站服务器租用价格表织梦网站地图html怎么做
  • 苏州网站优化建设哪个网站可以做竖屏
  • 用服务器ip怎么做网站东莞php网站建设
  • 高端网站建设设计公司天元建设集团有限公司王士坤
  • 网站建设与维护期末试卷南宁网站建设策划外包
  • 自己做的网站打不开怎么回事杭州住房建设部官方网站
  • 正式做网站站点怎么新建河北住房建设厅网站首页
  • 建网站网站wordpress 作者 描述
  • 如何做区块链网站电商网站建设技术外包
  • 网站维护工作的基本内容榆林市建设局官方网站
  • 制作搜索类网站北京网站设计工作室
  • 360神搜网站建设营销型网站应用
  • 认识电子商务网站建设技术2022千锋教育培训收费一览表
  • 山东响应式网站深圳品牌火锅店加盟
  • 风铃网站具体是做那方面的淘宝网站是谁做的好
  • 合肥seo网站推广外包贵港网站建设动态
  • 成都网站开发 Vr科技类公司网站怎么设计
  • 做网站代理需要办什么营业执照淄博seo服务
  • 道客网站建设推广优化wordpress调用文章函数
  • 网站选项卡图标代码广告建设网站建设
  • 初中做数学题的网站企业网站建立要做的准备
  • 商城网站开发 价格iis网站拒绝显示此网页
  • 谷歌关键词seo体系百科