dataclass的作用

dataclasss的作用

复制代码
from dataclasses import dataclass

@dataclass
class Person:
    name: str
    age: int
    gender: str = 'unknown'

# __init__方法用于初始化对象的属性。当创建一个类的实例时,Python会自动调用__init__方法来初始化对象的属性。例如,可以在__init__方法中为对象的属性赋初值。
person1 = Person('Alice', 25, 'female')
person2 = Person('Bob', 30, 'male')
person3 = Person('Alice', 25, 'female')

# __repr__方法用于返回对象的字符串表示。当使用print函数或者在交互式环境中输入对象名时,Python会自动调用__repr__方法来返回对象的字符串表示。例如,可以在__repr__方法中返回一个包含对象属性的字符串表示。
print(person1)
print(person2)
print(person3)
#  __eq__方法用于比较两个对象是否相等。当使用==运算符比较两个对象时,Python会自动调用__eq__方法来比较对象是否相等。例如,可以在__eq__方法中比较对象的属性是否相等。
print(person1 == person2)  # 输出:False
print(person1 == person3)  # 输出:True

输出结果:

Person(name='Alice', age=25, gender='female')

Person(name='Bob', age=30, gender='male')

Person(name='Alice', age=25, gender='female')

False

True

相关推荐
双向331 分钟前
RAG实战解密:三步构建你的智能文档问答系统(附开源方案)
前端
FL16238631293 分钟前
windows从源码安装python版本paddleocr3.4.0
开发语言·windows·python
七夜zippoe3 分钟前
模型解释性实战:从黑盒到白盒的SHAP与LIME完全指南
人工智能·python·机器学习·shap·lime
Smart-Space8 分钟前
QuickUp v4 新功能一览
python·tkinter·tinui
m0_5312371729 分钟前
C语言-static关键词,寄存器变量,define宏定义
c语言·开发语言
喵手43 分钟前
Python爬虫实战:电商问答语料构建完整实战 - 从爬取到检索语料的工程化实现(附CSV导出 + SQLite持久化存储)!
爬虫·python·sqlite·爬虫实战·零基础python爬虫教学·电商问答语料构建·爬取到检索语料
DEMO派1 小时前
前端CSRF攻击代码演示及防御方案解析
前端·csrf
REDcker1 小时前
Media Source Extensions (MSE) 详解
前端·网络·chrome·浏览器·web·js
CHANG_THE_WORLD1 小时前
C++ 一维、二维、三维数组完整演示
开发语言·c++
APIshop1 小时前
淘宝商品评论接口实战解析:从抓包到数据抓取全链路技术指南
java·python