编写一个类名为 Student 的学生类,满足以下要求:
1)包含"学号”、“性别”、“年龄”、"专业"四个属性,其中"年龄"为私有属性;所有属性通过类的初始化方法进行初始化。2)在类中,定义方法Getlnfo0用于返回学生四个属性信息;
3)在主程序中,使用你自己真实的学号、性别、年龄、专业声明一个 Students 实例对象(实例名称自拟),然后调用该实例的Getlnfo0方法获取四个实例属性,并通过 print 函数输出这些属性(输出格式不限)。
class Student:
def __init__(self,num,sex,age,zhuanye):
self.num = num
self.sex = sex
self.__age = age
self.zhuanye = zhuanye
def getInfo(self):
return [self.num,self.sex,self.__age,self.zhuanye]
a = Student("123456","女",16,"Genomic")
print(*a.getInfo())
class Student:
def __init__(self, the_id: str, name: str, age: int, major: str) -> None:
"""
:param the_id:
:param name:
:param age:
:param major:
"""
self.id = the_id
self.name = name
self.__age = age
self.major = major
def Getlnfo0(self) -> tuple:
"""
:return:
"""
return self.id, self.name, self.__age, self.major
if __name__ == '__main__':
my_id = "20200171010126"
my_name = "李华"
my_age = 21
my_major = "会计"
Me = Student(the_id=my_id, name=my_name, age=my_age, major=my_major)
information = Me.Getlnfo0()
print(f"id: {information[0]} name: {information[1]} age: {information[2]} major: {information[3]}")
题很简单,估计重点是私有属性问题,私有属性需要以两个下划线开头的字符串做变量
class Student:
def __init__(self,stu_no, sex, age, major):
self.stu_no = stu_no
self.sex = sex
self.major = major
self.__age = age
def Getlnfo0(self):
return self.stu_no,self.sex,self.major,self.__age
if __name__=='__main__':
student = Student('12334567','男',20,'计算机')
stu_no, sex, major, age = student.Getlnfo0()
print(f'学号:{stu_no}, 性别:{sex}, 年龄:{age}, 专业:{major}')
私有属性前加下划线: self.__age = age
class Student:
def __init__(self,num=1,sex='男',age=22,pro='土木工程'):
self.num,self.sex,self.pro = num,sex,pro
self.__age = age
def getInfo(self):
return [self.num,self.sex,self.__age,self.pro]
stu = Student()
print(*stu.getInfo())