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

企业公众号以及网站建设网站快速收录工具

企业公众号以及网站建设,网站快速收录工具,网站首页网址应该有对应的域名,免费的wordpress采集一、场景 dataclasses模块提供了一种方便的方法来创建和管理数据对象 它可以帮助开发者更容易地创建简单的类#xff0c;同时提供了一些实用的功能#xff0c;例如自动实现__init__()、repr()、eq()等方法。 数据容器#xff1a;如果您需要一个简单的类来存储一些数据…一、场景 dataclasses模块提供了一种方便的方法来创建和管理数据对象 它可以帮助开发者更容易地创建简单的类同时提供了一些实用的功能例如自动实现__init__()、repr()、eq()等方法。 数据容器如果您需要一个简单的类来存储一些数据例如配置信息、用户信息、数据记录等那么使用dataclass是非常合适的。dataclass可以自动为您生成适当的属性和方法以便您可以轻松地访问和修改数据。 数据对象如果您的代码需要处理大量的数据对象例如在数据分析、机器学习、自然语言处理等领域中那么使用dataclass可以使代码更加清晰易读减少手动编写大量的属性和方法的重复性工作。 序列化和反序列化dataclass可以帮助您更轻松地将对象序列化为JSON、XML等格式并在需要时将其反序列化。这使得处理不同系统之间的数据交换变得更加容易。 数据验证和清理在某些情况下您可能需要在将数据存储到数据库或发送到其他系统之前对其进行验证和清理。使用dataclass可以使这个过程更加简单和可靠。 二、基础用法 from dataclasses import dataclass, field, asdict, astuple from typing import List, Anydataclass class Book:name: strauthor: str# extend: Any hello world # 扩展字段 仅做记录publication: str field(metadata{description: 出版日期})num: int field(default1, metadata{description: 数量})price: float field(default0.0, metadata{currency: RMB})category: List[str] field(default_factorylist, reprFalse, metadata{description: 图书类别})def __post_init__(self):# 方法来确保书名的每个单词的首字母都是大写的self.name self.name.title()self.title self.name.upper()def is_expensive(self):# 检查一本书是否价格高于100return self.price 30.0def total_amount(self):return self.price * self.num如何调用book Book(nameUnder the sky, authorsanxian, price37.82, publication2022-11-07, category[武侠, 古风]) book Book(**{name: the three body problem, author: 刘慈欣, price: 37.82, publication: 2022-12-23, category: [科幻, 悬疑]}) print(book.name, book.author) print(book.title)print(book.is_expensive()) print(book.total_amount())book.price 27.5 # 修改价格属性 print(book.is_expensive()) # 输出Trueprint(asdict(book)) print(astuple(book))The Three Body Problem 刘慈欣 2022-12-23 37.82 THE THREE BODY PROBLEM True 37.82 False {name: The Three Body Problem, author: 刘慈欣, publication: 2022-12-23, num: 1, price: 27.5, category: [科幻, 悬疑]} (The Three Body Problem, 刘慈欣, 2022-12-23, 1, 27.5, [科幻, 悬疑])三、中级用法 装饰器参数 dataclasses.dataclass(*, initTrue, reprTrue, eqTrue, orderFalse, unsafe_hashFalse, frozenFalse) 参数名称默认值是否生成方法说明initTrue__init__是否生成 __init__ 方法reprTrue__repr__是否生成 __repr__ 方法eqTrue__eq__是否生成 __eq__ 方法orderFalse, , , 是否生成比较方法unsafe_hashFalse__hash__是否生成 __hash__ 方法frozenFalse不可变类是否生成不可变类 init 参数控制是否生成 init 方法。当设置为 True 时会自动生成 init 方法当设置为 False 时不会生成 init 方法。 dataclass(initFalse) class Person:name: strage: intdef __init__(self, name: str, age: int):self.name nameself.age agep Person(zhangsan, 30) print(p.name) # 输出: Alice print(p.age) # 输出: 30init 被设置为 Falsedataclass 不会自动生成 init 方法 init 被设置为 True(即默认)该方法接收两个参数 name 和 age并将存储在实例属性 self.name 和 self.age 中 frozen控制是否创建一个冻结的数据类即该类的实例在创建后就不可变 from dataclasses import dataclassdataclass(frozenTrue) class Point:x: inty: intp Point(1, 2) p.x 3 # 会引发 AttributeError: cant set attribute四、其它用法 field 支持的参数 参数描述默认值default字段的默认值default_factory返回字段初始值的函数init是否在._init_()方法中使用字段Truerepr是否在._repr_()方法中使用字段Truecompare是否在比较对象时, 包括该字段Truehash计算hash时, 是否包括字段Truemetadata包含字段信息的映射 compare 默认指定比较则各个属性依次次进行比较 注释下面仅用年龄进行排序或者排序 dataclass(orderTrue) class Person:name: str field(compareFalse)age: int field(compareTrue)height: float field(compareFalse)p1 Person(nameA-zhangsan, age25, height156) p2 Person(nameB-lisi, age18, height173) p3 Person(nameC-wanger, age20, height168)print(p2 p1) # 输出 True print(sorted([p1,p2, p3])) # 输出按薪资排序的 Person 对象列表False [Person(nameB-lisi, age18, height173), Person(nameC-wanger, age20, height168), Person(nameA-zhangsan, age25, height156) ]
http://www.tj-hxxt.cn/news/134873.html

相关文章:

  • 查询建设用地规划许可证在哪个网站自己做商城网站 哪种好
  • 牡丹区住房城乡建设局网站建立网站ftp
  • 医院门户网站建设方案wordpress前台403
  • 企业网站欣赏郑州企业形象设计物联网模块
  • 北京做兼职哪个网站跨平台app开发工具
  • 网站的视频代加工接订单网站
  • 桂林建网站的公司刚做外贸最好用哪个网站
  • dede电影网站源码wordpress站长邮箱
  • 哪些网站做翻译可以赚钱广元 网站建设
  • 网站源代码怎么生成网页wordpress产品目录
  • php网站管理系统江苏建设厅长
  • 网站怎样做 文件签收客户管理软件哪家好
  • 手机网站图片切换特效wordpress如何qq登录界面
  • wordpress仿站抓取软件网站推广的作用是什么
  • 广告网站建设目标东莞本地招聘网
  • 国际贸易英文网站网站特效js代码
  • 青岛网站关键词优化公司成都市郫都区
  • 拖拽响应式网站建设公司科技团队网站
  • 招聘网站怎么做线下活动深圳网站制作公司电话
  • 网页网站建设软件有哪些卖手表的网站
  • 怎么免费自己做网站做网站开发的有哪些公司好
  • 网站建设维护内容php网站建设案例教程视频教程
  • 做团购网站的公司浙江杰立建设集团 网站首页
  • 阿里巴巴网站上面产品描述一般怎么做的wordpress部署云
  • 搭建网站 开源软件考研资料找微信hyhyk1推广可以
  • asp网站建设实录常州承接网站建设
  • 免费模板简历网站做关于家乡的网站
  • 有哪些做伦敦金的网站wordpress视频主题模板下载
  • 注册建设网站的公司网站代码添加在网站的什么位置
  • 长沙哪家网站公司西安品牌策划