定义一个学生类,包括学号、姓名和出生日期三个属性(数据成员);包括一个用于给定数据成员初始值的构造函数;包含一个可计算学生年龄的方法。编写该类并对其进行测试。
我对类并不熟悉,此题代码来源于:python 类 的小练习_星羽空间的博客-CSDN博客_设计一个立方体类box,定义三个属性
代码为: 注意:运行时请将student1中的学号、生日完善方可运行,否则识别不了
import datetime
class student:
def __init__(self, Sno, Sname, Sbarthday, Sfaction):
self.Sage = 0
self.Sname = Sname
self.Sno = Sno
self.Sbarthday = datetime.datetime.strptime(Sbarthday, "%Y-%m-%d")
self.Setage(Sbarthday)
def Setage(self, Sbarthday):
if (datetime.date.today().month - self.Sbarthday.month) >= 0:
if (datetime.date.today().day - self.Sbarthday.day) < 0 and (
datetime.date.today().month - self.Sbarthday.month) == 0:
self.Sage = datetime.date.today().year - self.Sbarthday.year - 1
else:
self.Sage = datetime.date.today().year - self.Sbarthday.year
else:
self.Sage = datetime.date.today().year - self.Sbarthday.year - 1
student1 = student('2091201xx', '阿鹏', '20xx-xx-01', 68)
print("学号:{0} 姓名:{1} 年龄:{2}".format(student1.Sno, student1.Sname, student1.Sage))
建立一个汽车car类,包括:
属性:汽车颜色color、车身重量weight、速度speed.
构造函数:能初始化各个属性值(speed初始值设为50)。
方法:
speedup():将属性值speed+10并显示speed值;
speedCut():降属性值speed-10并显示speed值;
show ():显示属性值color、weight、speed。
在主程序中创建实例并初始化各属性值,调用show方法、加速方法、减速方法。
代码为:
class Car:
def __init__(self,color,weight,speed=50): #定义并将speed赋初值为50
self.color=color
self.weight=weight
self.speed =speed
def __str__(self):
return '颜色:%r,重量:%r,速度:%rkm/h' % ( self.color, self.weight, self.speed)
Lamborghini = Car('天蓝色','1520kg',350) #速度可自行修改
bicycle=Car('白色','20kg') #速度也可使用默认值
print(f'兰博基尼的属性为:\n{Lamborghini}')
print(f'自行车的属性为:\n{bicycle}')