2018-09-06 Day14-作業(yè)

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

class Computer:
    def __init__(self, brand, color, memory):
        self.brand = brand
        self.color = color
        self.memory = memory
    def play_game(self):
        print('我正在打游戲!')
    def write_code(self):
        print('寫代碼讓我快樂!')
    def watch_video(self):
        print('電視還是多好看!')
a = Computer('華碩','黑色','16G')  #查看
print(a.brand)
a.brand = '戴爾'   #修改
print(a.brand)
a.size = '16寸'    #添加
print(a.size)
del a.size         #修改
print(getattr(a,'brand'))   #查看
setattr(a,'brand','聯(lián)想')  #修改
setattr(a,'size','16寸')    #添加
print(a.size)
delattr(a,'size')    #刪除
print(a.brand)
a.play_game()
a.write_code()
a.watch_video()

結(jié)果:
華碩
戴爾
16寸
戴爾
16寸
聯(lián)想
我正在打游戲!
寫代碼讓我快樂!
電視還是多好看!

2.聲明一個人的類和狗的類:
狗的屬性:名字、顏色、年齡 狗的發(fā)法:叫喚
人的屬性:名字、年齡、
狗的方法:遛狗
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 take_dog(self):
        print('%s的%s在街上溜著%s的%s的%s'%(self.age,self.name,dog.age,dog.color,dog.name))


dog = Dog('大黃','黃色','2歲')
person1 = Person('小明','18歲',dog)
person1.take_dog()
dog.call()

結(jié)果:
18歲的小明在街上溜著2歲的黃色的大黃
汪~汪~汪~~~

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

class Rect:
    def __init__(self, width, weight):
        self.width = width
        self.weight = weight
    def perimeter(self):
        return 2 * (self.weight + self.width)
    def area(self):
        return self.weight * self.width
rect1 = Rect(3,4)
rect2 = Rect(6,9)
print('矩形1的周長是%d,面積是%d'%(rect1.perimeter(),rect1.area()))
print('矩形2的周長是%d,面積是%d'%(rect2.perimeter(),rect2.area()))

結(jié)果:
矩形1的周長是14,面積是12
矩形2的周長是30,面積是54

4.創(chuàng)建一個學(xué)生類:
屬性:姓名,年齡,學(xué)號 方法:答到,展示學(xué)生信息 創(chuàng)建意個班級類:
屬性:學(xué)號,班級名 方法:添加學(xué)生,刪除學(xué)生,點名

class Student:
    def __init__(self, name, age, id):
        self.name = name
        self.age = age
        self.id = id
    def amount(self):
        print('%s到!'%self.name)
    def stu_info(self):
        print('姓名:%s,年齡:%s,學(xué)號:%s'%(self.name,self.age,self.id))
class Class:
    def __init__(self, id, c_name,stu):
        self.class1 = {'班級名':c_name}
        self.id = id
        self.c_name = c_name
        self.stu = stu
    def add_stu(self):
        self.class1[self.id] = [self.stu.name, self.stu.age]
    def del_stu(self):
        del self.class1[self.id]
    def sign_in(self):
        print(self.stu.name)

stu1 = Student('小明','18','001')
class1 = Class(stu1.id,'python1806',stu1)
stu1.amount()
stu1.stu_info()
class1.add_stu()
print(class1.class1)
class1.del_stu()
print(class1.class1)
class1.sign_in()

測試:
小明到!
姓名:小明,年齡:18,學(xué)號:001
{'班級名': 'python1806', '001': ['小明', '18']}
{'班級名': 'python1806'}
小明

5.寫一個類,封裝所有和數(shù)學(xué)運算相關(guān)的功能(包含常用功能和常用值,例如:pi,e等)

class Math:
    def __init__(self):
        self.pi = 3.14

    def add(self, x, y):
        return x + y
    def rectangle_area(self, width, weight):
        return width * weight
    def circle_area(self, radius):
        return self.pi * radius ** 2
    def max(self,*args):
        self.args = args
        list1 = list(self.args)
        list1.sort()
        return list1[-1]
ma = Math()
print('兩個數(shù)和是',ma.add(3,4))
print('長方形的面積是:',ma.rectangle_area(3,4))
print('圓的面積是:',ma.circle_area(3))
print('序列的最大值是:',ma.max(4,7,2,5,1))

結(jié)果:
兩個數(shù)和是 7
長方形的面積是: 12
圓的面積是: 28.26
序列的最大值是: 7
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

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

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