设计一个用于人事管理的People类。考虑到通用性,这里只抽象出所有类型人员都具有的属性:number(编号)、sex(性别)、birthday(出生日期)、id(身份证号)等。其中“出生日期”声明为一个“日期”类内嵌子对象。用成员函数实现对人员信息的录入和显示。
时间: 2024-06-05 10:06:59 浏览: 80
class Date:
def __init__(self, year, month, day):
self.year = year
self.month = month
self.day = day
def __str__(self):
return f"{self.year}-{self.month}-{self.day}"
class People:
def __init__(self, number, sex, birthday, id):
self.number = number
self.sex = sex
self.birthday = birthday
self.id = id
def __str__(self):
return f"编号:{self.number}\n性别:{self.sex}\n出生日期:{self.birthday}\n身份证号:{self.id}"
def set_info(self, number, sex, birthday, id):
self.number = number
self.sex = sex
self.birthday = birthday
self.id = id
def display(self):
print(self.__str__())
# 示例用法
p = People("001", "男", Date(1990, 1, 1), "123456789012345678")
p.display() # 输出:编号:001\n性别:男\n出生日期:1990-1-1\n身份证号:123456789012345678
p.set_info("002", "女", Date(1995, 5, 5), "123456789012345679")
p.display() # 输出:编号:002\n性别:女\n出生日期:1995-5-5\n身份证号:123456789012345679
阅读全文