day14-homework

1.聲明?個(gè)電腦類:

屬性:品牌、顏?、內(nèi)存??
?法:打游戲、寫(xiě)代碼、看視頻
a.創(chuàng)建電腦類的對(duì)象,然后通過(guò)對(duì)象點(diǎn)的?式獲取、修改、添加和刪除它的屬性
b.通過(guò)attr相關(guān)?法去獲取、修改、添加和刪除它的屬性

class Computer:

    def __init__(self,brand,color,memsize):
        self.brand = brand
        self.color = color
        self.memsize = memsize
    def playGame(self):
        print("打游戲")
    def writeCode(self):
        print("寫(xiě)代碼")
    def watchTv(self):
        print("看視頻")
#a.
computer = Computer('Apple','white','8G')
print(computer.brand)
print(computer.color)
print(computer.memsize)
computer.brand = 'Mi'
computer.color = 'black'
computer.memsize = '4G'
print(computer.brand)
print(computer.color)
print(computer.memsize)
computer.screen = '15.6 inch'
print(computer.screen)
del computer.screen

#b.
computer = Computer('Apple','white','8G')

setattr(computer,'screen','15.6 inch')
print(getattr(computer,'screen',0))
delattr(computer,'screen')

computer.__setattr__('screen','15.6 inch')
print(computer.__getattribute__('screen'))
computer.__delattr__('screen')

2.聲明?個(gè)?的類和狗的類:

狗的屬性:名字、顏?、年齡 狗的?法:叫喚
?的屬性:名字、年齡、狗 ?的?法:遛狗
a.創(chuàng)建?的對(duì)象?明,讓他擁有?條狗??,然后讓?明去遛??

class Dog:
    def __init__(self,name,color,age):
        self.name = name
        self.color = color
        self.age = age
    def shout(self):
        print(self.name+':汪汪汪~(yú)~~')
class Person:
    def __init__(self,name,age,dog):
        self.name = name
        self.age = age
        self.dog = dog
    def walkTheDog(self):
        print(self.name+'正在遛'+self.dog.name)

dog = Dog('旺財(cái)','brown','10')
person = Person('小明','21',dog)
person.walkTheDog()
dog.shout()

3.聲明?個(gè)矩形類:

屬性:?、寬 ?法:計(jì)算周?和?積
a.創(chuàng)建不同的矩形,并且打印其周?和?積

class Rectangle:

    def __init__(self,length,width):
        self.length = length
        self.width = width
    def perimeter(self):
        return (self.length + self.width) * 2
    def area(self):
        return self.length * self.width

rectangle = Rectangle(10,20)
print(rectangle.perimeter())
print(rectangle.area())

4.創(chuàng)建一個(gè)學(xué)生類:

屬性:姓名,年齡,學(xué)號(hào),成績(jī)
方法:答到,展示學(xué)生信息
創(chuàng)建一個(gè)班級(jí)類: 屬性:學(xué)生,班級(jí)名
方法:添加學(xué)生,刪除學(xué)生,點(diǎn)名, 獲取班級(jí)中所有學(xué)生的平均值, 獲取班級(jí)中成績(jī)最好的學(xué)生

class Student:

    def __init__(self,name,age,id,grades):
        self.name = name
        self.age = age
        self.id = id
        self.grades = grades
    def signIn(self):
        print(self.name+':我在~~~')

class Studentclass:
    def __init__(self,classname,student:Student):
        self.allstudent = {}
        self.classname = classname
        self.allstudent[student.name] = student
    def addStudent(self,student):
        self.allstudent[student.name] = student
    def delStudent(self,student):
        self.allstudent.pop(student.name)
    def callStudent(self):
        for name in self.allstudent.keys():
            print(name+'在不在???')
    def getAverageGrade(self):
        sum = 0
        for temp in self.allstudent.values():
            sum += temp.grades
        return sum/len(self.allstudent)
    def getBestStudent(self):
        best = Student('','','',0)
        for temp in self.allstudent.values():
            if temp.grades>best.grades:
                best = temp
        return best

laoliu = Student('老劉','21','001',80)
laoyu = Student('老余','28','002',90)
laozeng = Student('老曾','21','003',85)
laolong = Student('老龍','21','004',80)

py = Studentclass('python1807',laoliu)
py.addStudent(laoyu)
py.addStudent(laozeng)
py.addStudent(laolong)
py.callStudent()
laoliu.signIn()
laoyu.signIn()
laozeng.signIn()
laolong.signIn()
print(py.getAverageGrade())
best = py.getBestStudent()
print(best.name+'成績(jī)最好,是'+ str(best.grades))
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容