- 声明一个电脑类
属性:品牌、颜色、内存大小
方法:打游戏、写代码、看视频
a.创建电脑类的对象,然后通过对象点的方式获取、修改、添加和删除它的属性
b.通过attr相关方法去获取、修改、添加和删除它的属性
class Computer:
def __init__(self,brand,color,internal_storage_capacity):
self.brand=brand
self.color=color
self.internal_storage_capacity=internal_storage_capacity
def play_games(self):
print('打游戏')
def write_code(self):
print('写代码')
def watch_video(self):
print('看视频')
compter1=Computer('戴尔','white','16G')
print(compter1.color)
compter1.color='black'
print(compter1.color)
del compter1.color
compter1.color='red'
print(compter1.color)
compter2=Computer('联想','white','16G')
print(getattr(compter2,'brand','无'))
setattr(compter2,'brand','华硕')
print(getattr(compter2,'brand','无'))
delattr(compter2,'brand')
print(getattr(compter2,'brand','无'))
setattr(compter2,'brand','神舟')
print(getattr(compter2,'brand','无'))
2.声明一个人的类和狗的类:
狗的属性:名字、颜色、年龄
狗的 法:叫唤
人的属性:名字、 年龄、狗
人的方法:遛狗
a.创建人的对象名字叫小明,让他拥有一条狗 ,然后让小明去遛狗
class Person:
def __init__(self,name,age,dog):
self.name=name
self.age=age
self.dog=dog
def walk_dog(self):
print('今天阳光明媚,%s带着%s去散步'%(self.name,self.dog))
class Dog:
def __init__(self,name,color,age):
self.name = name
self.color = color
self.age = age
def bark(self):
print('%s高兴地汪汪叫'%self.name)
d1 = Dog('帕克','黄色','2')
p1 = Person('卡卡西','34',d1.name)
p1.walk_dog()
3.声明一个矩形类:
属性: 长、宽
方法:计算周长和面积
a.创建不同的矩形,并且打印其周长和面积
class Rectangle:
def __init__(self,length,width):
self.length=length
self.width=width
def perimeter(self):
print((self.length+self.width)*2)
def area(self):
print(self.length*self.width)
p1=Rectangle(15,10)
p1.perimeter()
p1.area()
4.创建一个学生类:
属性:姓名,年龄,学号,成绩
方法:答到,展示学生信息
创建一个班级类: 属性:学生,班级名
方法:添加学生,删除学生,点名, 获取班级中所有学生的平均值, 获取班级中成绩最好的学生
class Student:
def __init__(self,name,age,num,score):
self.name=name
self.age=age
self.num=num
self.score=score
def show_info(self,stu):
return stu.name,stu.age,stu.num,stu.score
def reply(self):
print('%s到'%self.name)
class Class:
def __init__(self,name,students=[]):
self.name=name
self.students=students
def add_stu(self):
name = input("请输入名字:")
age = input("请输入年龄:")
num= input("请输入学号:")
score = input("请输入成绩:")
stu = Student(name, age, num,int(score))
self.students.append(stu)
def del_stu(self):
name = input("请输入要删除学生的姓名")
for stu in self.students[:]:
if stu == name:
del stu
def say(self, name):
print('%s到了没'%name)
def average_score(self):
sum=0
for student in self.students:
sum+=student.score
if len(self.students)==0:
return 0
return sum/len(self.students)
def max_score(self):
max=self.students[0].score
name=self.students[0].name
for student in self.students:
if student.score>self.students[0].score:
max = student.score
name =student.name
return max,name
p1=Class('1ban')
p1.add_stu()
p1.add_stu()
print(p1.average_score())
print(p1.max_score())