day14-homework

1.聲明一個(gè)電腦類:屬性:品牌、顏色坤溃、內(nèi)存大小 方法:打游戲、寫代碼嘱丢、看視頻
a.創(chuàng)建電腦類的對象薪介,然后通過對象點(diǎn)的方式獲取、修改越驻、添加和刪除它的屬性
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('play games')
    def write_codes(self):
        print('write codes')
    def look_video(self):
        print('look at video')

if __name__ == '__main__':
    computer = Computer('HP','white','2g')
    computer.play_game()
    print(computer.brand,computer.color,computer.memory)
    computer.brand = 'Apple'#修改
    computer.type = 'PC'#添加
    del computer.color #刪除
    print(computer.brand, computer.type, computer.memory) #查看
    setattr(computer,'brand','華碩') #修改
    delattr(computer,'memory') #刪除
    print(getattr(computer,'brand'),getattr(computer,'color','Black'),computer.__getattribute__('type')) #查看和添加

result:
play games
HP white 2g
Apple PC 2g
華碩 Black PC

2.聲明一個(gè)人的類和狗的類:
狗的屬性:名字伐谈、顏色烂完、年齡 狗的方法:叫喚
人的屬性:名字、年齡诵棵、狗
人的方法:遛狗
a.創(chuàng)建人的對象小明抠蚣,讓他擁有一條狗大黃,然后讓小明去遛大黃

class Dog:
    def __init__(self,name,color,age):
        self.color = color
        self.name = name
        self.age = age
    def voice(self):
        return(self.name+'-汪汪汪')
class Person:
    def __init__(self,name,age,dog):
        self.name = name
        self.age = age
        self.dog = dog
    def walk_dog(self,voice):
        print(self.name + '->遛狗->'+self.dog+'叫喚->'+voice)
if __name__ == '__main__':
    dog = Dog('大黃','粉色','3')
    person = Person('小明','10',dog.name)
    person.walk_dog(dog.voice())

result:
小明->遛狗->大黃叫喚->大黃-汪汪汪

聲明一個(gè)矩形類:屬性:長履澳、寬 ?方法:計(jì)算周長和面積
a.創(chuàng)建不同的矩形嘶窄,并且打印其周長和面積

class Rectangle:
    def __init__(self,length,width):
        self.length = length
        self.width = width
    def circumference(self):
        return '周長:%.2f' % 2*(self.length+self.width)
    def area(self):
        return '面積:%.2f' % 2*self.length*self.width

創(chuàng)建一個(gè)學(xué)生類:屬性:姓名,年齡距贷,學(xué)號 ?方法:答到柄冲,展示學(xué)生信息
創(chuàng)建一個(gè)班級類:屬性:學(xué)生,班級名 ?方法:添加學(xué)生忠蝗,刪除學(xué)生现横,點(diǎn)名

class Student:
    def __init__(self,name,age,id):
        self.name = name
        self.age = age
        self.id = id
    def sign_in(self):
        print(self.name+'已到達(dá)')
    def show_student(self):
        print( {'name':self.name,'age':self.age,'id':self.id})
class Class:
    def __init__(self,class_name,students):
        self.class_name = class_name
        self.students = students
    def add_student(self,student):
        """
        添加學(xué)生到學(xué)生列表中
        :param student: 學(xué)生信息的字典
        :return:
        """
        self.students.apppend(student)
        print('添加學(xué)生成功.')
    def del_student(self,student_name):
        """
        傳入學(xué)生的姓名后從學(xué)生列表中刪除該學(xué)生
        :param student_name:
        :return:
        """
        for stu in self.students[:]:
            if student_name == stu['name']:
                self.students.remove(stu)
                print('刪除成功')
                break
        print('刪除失敗.')
    def call_name(self):
        for stu in self.students:
            print(stu['name'],end=' ')

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

class Maths:
    pi = 3.141592653589793
    e = 2.718281828459045
    @classmethod
    def addition(cls,*number):
        """
        加法
        :param number:遠(yuǎn)算數(shù)元組
        :return:
        """
        return(sum(number))

    @classmethod
    def subtraction(cls,num,*number):
        """
        減法
        :param num:減數(shù)
        :param number:被減數(shù)元組
        :return:
        """
        return(num-sum(number))

    @classmethod
    def multiplication(cls,*number):
        """
        乘法
        :param number: 乘數(shù)元組
        :return:
        """
        count = 1
        for item in number:
            count *= item
        return count
    @classmethod
    def division(cls,num,*number):
        """
        除法
        :param num:除數(shù)
        :param number:被除數(shù)元組
        :return:
        """
        for item in number:
            num /= item
        return num

    @classmethod
    def exponentiation(cls, number,num):
        """
        乘方
        :param number: 底數(shù)
        :param num: 階數(shù)
        :return:
        """
        count = 1
        if num > 0:
            for _ in range(num):
                count *= number
            return count

    @classmethod
    def factorial(cls, number,num):
        """
        階乘
        :param number: 底數(shù)
        :param num:階數(shù)
        :return:
        """
        count = 1
        if not num:
            return 1
        if num > 0:
            for n in range(1,num+1):
                count *= n
            return count

6.1.寫一個(gè)班級類戒祠,屬性:班級名、學(xué)生速种; 功能:添加學(xué)生姜盈、刪除學(xué)生、根據(jù)姓名查看學(xué)生信息配阵,展示班級的所有學(xué)生信息

class Class2:
    def __init__(self,class_name,students):
        self.class_name = class_name
        self.students = students
    def add_student(self,student):
        """
        添加學(xué)生到學(xué)生列表中
        :param student: 學(xué)生信息的字典
        :return:
        """
        self.students.apppend(student)
        print('添加學(xué)生成功.')
    def del_student(self,student_name):
        """
        傳入學(xué)生的姓名后從學(xué)生列表中刪除該學(xué)生
        :param student_name:
        :return:
        """
        for stu in self.students[:]:
            if student_name == stu['name']:
                self.students.remove(stu)
                print('刪除成功')
                break
        print('刪除失敗.')
    def query_student(self,student_name):
        for stu in self.students:
            if student_name == stu['name']:
                print('找到該學(xué)生:%s' % stu)
                break
        print('沒有找到該學(xué)生')
    def all_students(self):
        for stu in self.students:
            print(stu)
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末馏颂,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子棋傍,更是在濱河造成了極大的恐慌救拉,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,366評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件瘫拣,死亡現(xiàn)場離奇詭異近上,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,521評論 3 395
  • 文/潘曉璐 我一進(jìn)店門壹无,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人感帅,你說我怎么就攤上這事∈颍” “怎么了岖是?”我有些...
    開封第一講書人閱讀 165,689評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長实苞。 經(jīng)常有香客問我豺撑,道長,這世上最難降的妖魔是什么黔牵? 我笑而不...
    開封第一講書人閱讀 58,925評論 1 295
  • 正文 為了忘掉前任聪轿,我火速辦了婚禮,結(jié)果婚禮上猾浦,老公的妹妹穿的比我還像新娘陆错。我一直安慰自己,他們只是感情好金赦,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,942評論 6 392
  • 文/花漫 我一把揭開白布音瓷。 她就那樣靜靜地躺著,像睡著了一般夹抗。 火紅的嫁衣襯著肌膚如雪绳慎。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,727評論 1 305
  • 那天漠烧,我揣著相機(jī)與錄音杏愤,去河邊找鬼。 笑死沽甥,一個(gè)胖子當(dāng)著我的面吹牛声邦,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播摆舟,決...
    沈念sama閱讀 40,447評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼亥曹,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了恨诱?” 一聲冷哼從身側(cè)響起媳瞪,我...
    開封第一講書人閱讀 39,349評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎照宝,沒想到半個(gè)月后蛇受,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,820評論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡厕鹃,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,990評論 3 337
  • 正文 我和宋清朗相戀三年兢仰,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了乍丈。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,127評論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡把将,死狀恐怖轻专,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情察蹲,我是刑警寧澤请垛,帶...
    沈念sama閱讀 35,812評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站洽议,受9級特大地震影響宗收,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜亚兄,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,471評論 3 331
  • 文/蒙蒙 一混稽、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧儿捧,春花似錦荚坞、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,017評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至懒鉴,卻和暖如春诡挂,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背临谱。 一陣腳步聲響...
    開封第一講書人閱讀 33,142評論 1 272
  • 我被黑心中介騙來泰國打工璃俗, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人悉默。 一個(gè)月前我還...
    沈念sama閱讀 48,388評論 3 373
  • 正文 我出身青樓城豁,卻偏偏與公主長得像,于是被迫代替她去往敵國和親抄课。 傳聞我的和親對象是個(gè)殘疾皇子唱星,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,066評論 2 355

推薦閱讀更多精彩內(nèi)容