Day14-作業(yè)

  1. 聲明一個電腦類
    屬性:品牌、顏色、內存大小
    方法:打游戲、寫代碼、看視頻

a.創(chuàng)建電腦類的對象,然后通過對象點的方式獲取、修改、添加和刪除它的屬性
b.通過attr相關方法去獲取、修改、添加和刪除它的屬性

class Computer:
    def __init__(self, brand, color, size):
        self.brand = brand
        self.color = color
        self.size = size

    def play_game(self):
        print('打游戲')

    def write_code(self):
        print('寫代碼')

    def see_move(self):
        print('看視頻')


computer1 = Computer('華碩', '黑色', "12GB")
# 1.獲取
print("a.品牌:%s 顏色:%s 內存大小:%s" % (computer1.brand, computer1.color, computer1.size))
print("b.品牌:%s 顏色:%s 內存大小:%s" % (getattr(computer1, "brand"), getattr(computer1, "color"), getattr(computer1, "size")))

# 2.修改
computer1.brand = "外星人"
setattr(computer1, 'color', '白色')
print("品牌:%s, 顏色:%s" % (computer1.brand, computer1.color))

# 3.添加
computer1.disc = '1T'
setattr(computer1, 'digit', '64')
print("磁盤大小:%s 位數(shù):%s" %(computer1.disc, computer1.digit))

# 4.刪除
del computer1.brand
delattr(computer1, 'color')

2.聲明一個人的類和狗的類:
狗的屬性:名字、顏色、年齡
狗的 法:叫喚
人的屬性:名字、 年齡、狗
人的方法:遛狗
a.創(chuàng)建人的對象名字叫小明,讓他擁有一條狗 ,然后讓小明去遛狗

class Dog:
    def __init__(self, name, color, age):
        self.name = name
        self.color = color
        self.age = age

    def call(self):
        print('汪汪汪')


class Person:
    def __init__(self, name, age, dog):
        self.name = name
        self.age = age
        self.dog = dog

    def wolk(self):
        print('溜%s' % self.dog.name)


dog1 = Dog('二哈', '黑色', '2')
person1 = Person('小明', '20', dog1)
person1.wolk()

3.聲明一個矩形類:
屬性: 長、寬
方法:計算周長和面積
a.創(chuàng)建不同的矩形,并且打印其周長和面積

class Rectangle:
    def __init__(self, width, length):
        self.width = width
        self.length = length

    def perimeter(self):
        per = (int(self.length) + int(self.width)) * 2
        print('周長 %s' % per)

    def area(self):
        ar = int(self.length) * int(self.width)
        print('面積 %s' % ar)


rectangle1 = Rectangle(40, 50)
rectangle1.perimeter()
rectangle1.area()
rectangle2 = Rectangle(60, 20)
rectangle2.perimeter()
rectangle2.area()
rectangle3 = Rectangle(20, 40)
rectangle3.perimeter()
rectangle3.area()

4.創(chuàng)建一個學生類:
屬性:姓名,年齡,學號,成績
方法:答到,展示學生信息
創(chuàng)建一個班級類: 屬性:學生,班級名
方法:添加學生,刪除學生,點名, 獲取班級中所有學生的平均值, 獲取班級中成績最好的學生

class Student:
    def __init__(self, name, age, sno, score):
        self.name = name
        self.age = age
        self.sno = sno
        self.score = score

    def answer(self):
        print('%s 到!' % self.name)

    def show_info(self):
        print("姓名:%s 年齡:%d 學號:%s 成績:%s" % (self.name, self.age, self.sno, self.score))


class Class:
    def __init__(self, name, student_list: list):
        self.name = name
        self.student_list = student_list

    def add_student(self, student):
        for item in self.student_list:
            if item.sno == student.sno:
                print("學號已經(jīng)存在")
                return
        self.student_list.append(student)

    def detele_student(self, sno):
        for item in self.student_list:
            if item.snp == sno:
                self.student_list.remove(item)
                break
        else:
            print('該學生不存在')

    def avg(self):
        i = 0
        for item in self.student_list:
            i += item.score
        i /= len(self.student_list)
        print('分數(shù)平均值:', i)

    def max(self):
        max1 = max(self.student_list, key=lambda item: item.score)
        max1.show_info()

    def call_student(self, s_name):
        for item in self.student_list:
            if item.name == s_name:
                item.answer()
                break
        else:
            print('沒有此人')


student1 = Student('小明', 20, 'python001', 99)
student2 = Student('小紅', 18, 'python002', 87)
student3 = Student('小花', 22, 'python003', 93)
student_list = [student1, student2, student3]
class1 = Class('python', student_list)
class1.avg()
class1.max()
class1.call_student('小明')
class1.detele_student('python001')
class1.call_student('小明')
class1.call_student('小王')
student4 = Student('小王', 23, 'python004', 83)
class1.add_student(student4)
class1.call_student('小王')
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • 親戚覺得
    荒誕派派閱讀 518評論 0 0
  • 這兩天,每天都有寫一點梳理心情的文字,講課當天也寫過一篇準備發(fā)的文章,當時感覺文字情緒起伏,偏見太多,等平...
    一諾口腔閱讀 157評論 0 0
  • 馬可把他喜歡的馬克杯裝滿水,這個馬克杯的杯壁是紫色星空花紋的。馬可很喜歡馬克杯,因為它的構造很精妙,雙層杯壁,中間...
    胡斯w閱讀 396評論 0 3

友情鏈接更多精彩內容