day14總結(jié)

一、重寫

繼承后:
a.子類可以擁有除父類繼承的內(nèi)容外欲险,添加其他內(nèi)容和方法
b.父類不可以使用子類的方法和屬性

完全重寫:
重新實(shí)現(xiàn)從父類繼承下來(lái)的方法
保留父類,添加新的功能

對(duì)象調(diào)用時(shí)天试,先看有沒(méi)功能,沒(méi)有才看父類务唐,如果沒(méi)有带兜,看爺類

關(guān)于方法:
a.在子類中可以直接使用的方法

class Ainmals(object):
    number=10
    """動(dòng)物類"""
    def __init__(self):
        self.age=0
        self.color=''
    def eat(self):
        print('吃骨頭')
    @classmethod
    def get_number(cls):
        print(cls.number)

class Dog(Ainmals):

    def wtach_door_dog(self):
        print('看家')

    def eat(self):
        super().eat()
        print('不好吃')

    @classmethod
    def get_number(cls):
        return super().get_number()
dog=Dog()
    dog.name='大飛'
    dog.age=3
    dog.eat()
    dog.wtach_door_dog()
    dog.get_number()

二、添加屬性

繼承屬性的時(shí)候刑巧,繼承了init方法
給當(dāng)前類添加對(duì)象屬性,如果要保留父類的對(duì)象屬性啊楚,需要使用supper(),去調(diào)用父類的init方法

class Person:
    def __init__(self,name,age):
        self.name=name
        self.age=age
class Staff(Person):
    def __init__(self,name,age,salary):
        super().__init__(name,age)
        self.salary=salary
if __name__ == '__main__':
    s1=Staff('大飛',28,44)
    print(s1.salary)

    print(s1.age)

class Person:
    def __init__(self,name,age,sex):
      self.name=name
      self.age=age
      self.sex=sex
      self.tall=0

class Student(Person):
    def __init__(self,name='',age=0,tel=''):
        super().__init__(name,age,sex='女')
        self.id='22'
        self.score='33'
        self.tel=tel

s1=Student('大飛',22,123)
print(s1.name,s1.age,s1.tel)

p1=Person('張飛',22,'男')
print(p1.name,p1.age,p1.sex)

s1=Student('李三',18,110)
print(s1.name,s1.age,s1.sex)

三特幔、運(yùn)算加載符

python中,一個(gè)類下蚯斯,參數(shù)不同,叫重載遭赂,但不支持横辆,只以后面那個(gè)出結(jié)果,前面都覆蓋了


class Student:
    def run(self):
        print('在跑')
    def run (self,name):
        print('%s在跑'% name)
s1=Student()
s1.run('yuting')
2.重載困肩,重新定義運(yùn)算符運(yùn)算的過(guò)程

"""
class Student2:
    def __init__(self,name='',age=0,height=0):
        self.name=name
        self.age=age
        self.height=height


    def __gt__(self, other):
        #比較的是屬性值
        return self.height>other.height
    def __lt__(self, other):
        return self.age<other.age
    def __add__(self, other):
        return self.age+other.age
    def __sub__(self, other):
        return self.age-other.age
stu1=Student2('aa',18,170)
stu2=Student2('bb',19,150)
if stu1>stu2:
    print('====')
if stu1<stu2:
    print('====')
print(stu1 + stu2)
print(stu1-stu2)

四脆侮、內(nèi)存管理

python內(nèi)存管理原理

內(nèi)存中兩個(gè)特殊的區(qū)域
棧:里面的內(nèi)存管理是系統(tǒng)自動(dòng)管理(內(nèi)存開(kāi)辟和釋放(作用域結(jié)束,函數(shù)結(jié)束胡釋放潭枣,程序結(jié)束幻捏,就釋放))

堆:需要程序員寫程序來(lái)開(kāi)辟和釋放的(python中也已經(jīng)自動(dòng)化)

原理:堆中的數(shù)據(jù)到底是什么時(shí)候釋放的
看一個(gè)值有幾個(gè)引用,當(dāng)一個(gè)值沒(méi)有引用的時(shí)候篡九,值對(duì)應(yīng)的內(nèi)存空間就會(huì)被釋放
(引用計(jì)算機(jī)制)
引用:存儲(chǔ)對(duì)象地址的變量

五、包的使用

封裝:
對(duì)一個(gè)功能————》函數(shù)
對(duì)功能------》模塊和類
對(duì)數(shù)據(jù)-----》類伊佃、字典
對(duì)多個(gè)類----》模塊
對(duì)多個(gè)模塊---》包(特殊的文件夾讽坏,里面有init.py文件)

導(dǎo)入包
import packbag1
導(dǎo)入某個(gè)包中的模塊
from packbag1 import my_math
導(dǎo)入某個(gè)包的某個(gè)模塊中某個(gè)函數(shù)和類
from packbag1.my_math import sum,Math

作業(yè):
0.定義?一個(gè)學(xué)?生類例证。有屬性:姓名、年年齡胀葱、成績(jī)(語(yǔ)?文,數(shù)學(xué)抵屿,英語(yǔ))[每課成績(jī)的類型為整數(shù)] ?方法: a. 獲取學(xué)?生的姓名:getname() b. 獲取學(xué)?生的年年齡: getage() c. 返回3?門科?目中最?高的分?jǐn)?shù)轧葛。get_course()

class Scores:
    def __init__(self):
        self.chinese = int(input('語(yǔ)文:'))
        self.math = int(input('數(shù)學(xué):'))
        self.english = int(input('英語(yǔ):'))

class Student(Scores):
    def __init__(self,name,age):
        super().__init__()
        self.name=name
        self.age=age

    def get_name(self):
        print (self.name)
    def get_age(self):
        print(self.age)

    def get_course(self):
        print( '最大值是:',max(self.chinese,self.math,self.english))

s1=Scores
s2=Student('大飛',22)
s2.get_course()

結(jié)果顯示:

語(yǔ)文:1
數(shù)學(xué):2
英語(yǔ):3
最大值是: 3

1.建?立?一個(gè)汽?車類Auto,包括輪胎個(gè)數(shù)求晶,汽?車顏?色衷笋,?車身重量量,速度等成員變量量辟宗,并通過(guò)不不同的構(gòu)造?方法創(chuàng) 建實(shí)例例。?至少要求 汽?車能夠加速 減速 停?車空幻。 再定義?一個(gè)?小汽?車類CarAuto 繼承Auto 并添加空調(diào)晨抡、CD等成 員變量量 覆蓋加速 減速的?方法


class Auto:
    def __init__(self,tyre=4,color='yellow',weight=500,speed=100):
        self.tyre=tyre
        self.color=color
        self.weight=weight
        self._speed=speed

    def fast(self):
        if 0<= self._speed<60:
            print('請(qǐng)加速')
    def slow(self):
        if 60<=self._speed<120:
            print('請(qǐng)減速')
        else:
            print('請(qǐng)停車')

a1=Auto()
a1.fast()
a1.slow()

class CarAuto(Auto):
    def __init__(self,air,Cd):
        super().__init__()
        self.air=air
        self.Cd=Cd

    def fast(self):
         if 0<= self._speed<60:
            print('請(qǐng)加速')
    def slow(self):
        if 60<=self._speed<120:
            print('請(qǐng)減速')
        else:
            print('請(qǐng)停車')

a2=CarAuto('格力','好歌')
a2.fast()
a2.slow()

管理理員是?一種特殊的?用戶。編寫?一個(gè)名為Admin 的類如捅,讓它繼承User類调煎。添加?一個(gè)名為privileges 的屬性, ?用于存儲(chǔ)?一個(gè)由字符串串(如"can add post"士袄、"can delete post"娄柳、"can ban user"等)組成的列列表。編寫?一個(gè)名為 show_privileges()的?方法赤拒,它顯示管理理員的權(quán)限诱鞠。創(chuàng)建?一個(gè)Admin 實(shí)例例这敬,并調(diào)?用這個(gè)?方法。

class User:
    firstname=''
    lastname=''

    def __init__(self,name='老張',age=50,sex='男'):
        self.name=name
        self.age=age
        self.sex=sex

    def describeuser(self):
        print('姓名:%s 年齡:%s 姓名:%s'% (self.name,self.age,self.sex))

    def greetuser(self):
        print('hello,你好:%s'% self.name)
class Admin(User):
    def __init__(self,privileges=''):
        super().__init__()
        self.privileges=privileges

    def show_privileges(self):
        print('管理權(quán)限:%s'% self.privileges)

a1=Admin(['can add post', 'can delete post', 'can ban user'])
a1.show_privileges()

3.創(chuàng)建?一個(gè)Person類阳掐,添加?一個(gè)類字段?用來(lái)統(tǒng)計(jì)Perosn類的對(duì)象的個(gè)數(shù)


class Person:
    count=0
    def __init__(self,name=''):
        self.name=name
        Person.count+=1


p1=Person('張三')
p2=Person('李四')
print(Person.count)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末缭保,一起剝皮案震驚了整個(gè)濱河市帝雇,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌尸闸,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,198評(píng)論 6 514
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件苞尝,死亡現(xiàn)場(chǎng)離奇詭異宦芦,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)抡砂,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,334評(píng)論 3 398
  • 文/潘曉璐 我一進(jìn)店門恬涧,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人丑搔,你說(shuō)我怎么就攤上這事提揍。” “怎么了劳跃?”我有些...
    開(kāi)封第一講書(shū)人閱讀 167,643評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)郑诺。 經(jīng)常有香客問(wèn)我,道長(zhǎng)间景,這世上最難降的妖魔是什么倘要? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,495評(píng)論 1 296
  • 正文 為了忘掉前任十拣,我火速辦了婚禮,結(jié)果婚禮上夭问,老公的妹妹穿的比我還像新娘缰趋。我一直安慰自己捧杉,他們只是感情好秘血,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,502評(píng)論 6 397
  • 文/花漫 我一把揭開(kāi)白布灰粮。 她就那樣靜靜地躺著,像睡著了一般粘舟。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上霞揉,一...
    開(kāi)封第一講書(shū)人閱讀 52,156評(píng)論 1 308
  • 那天嘉抒,我揣著相機(jī)與錄音,去河邊找鬼隶症。 笑死岗宣,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的耗式。 我是一名探鬼主播趁猴,決...
    沈念sama閱讀 40,743評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼彪见,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了捕犬?” 一聲冷哼從身側(cè)響起酵镜,我...
    開(kāi)封第一講書(shū)人閱讀 39,659評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎垢粮,沒(méi)想到半個(gè)月后靠粪,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,200評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡斩跌,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,282評(píng)論 3 340
  • 正文 我和宋清朗相戀三年捞慌,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片袖订。...
    茶點(diǎn)故事閱讀 40,424評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡嗅虏,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出皮服,到底是詐尸還是另有隱情,我是刑警寧澤硫眯,帶...
    沈念sama閱讀 36,107評(píng)論 5 349
  • 正文 年R本政府宣布择同,位于F島的核電站,受9級(jí)特大地震影響裹纳,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜剃氧,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,789評(píng)論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望虹曙。 院中可真熱鬧番舆,春花似錦矾踱、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,264評(píng)論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)吗氏。三九已至雷逆,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間膀哲,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,390評(píng)論 1 271
  • 我被黑心中介騙來(lái)泰國(guó)打工仿村, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留兴喂,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,798評(píng)論 3 376
  • 正文 我出身青樓畏鼓,卻偏偏與公主長(zhǎng)得像壶谒,于是被迫代替她去往敵國(guó)和親滴肿。 傳聞我的和親對(duì)象是個(gè)殘疾皇子佃迄,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,435評(píng)論 2 359

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

  • 方法重寫 繼承后,字類可以擁有除父類繼承的內(nèi)容以外的其他內(nèi)容 1.關(guān)于方法 1).可以直接添加新方法2).重寫:a...
    Kris_Shin閱讀 198評(píng)論 0 3
  • 1. 繼承 繼承后堆缘,子類可以擁有除父類繼承的內(nèi)容以外的其他內(nèi)容 關(guān)于方法1).在子類中可以直接添加其他的方法2)....
    奈斯凸米特閱讀 178評(píng)論 0 4
  • 1.ios高性能編程 (1).內(nèi)層 最小的內(nèi)層平均值和峰值(2).耗電量 高效的算法和數(shù)據(jù)結(jié)構(gòu)(3).初始化時(shí)...
    歐辰_OSR閱讀 29,405評(píng)論 8 265
  • 八年缀皱,時(shí)間定格,從此我們便是路人啤斗!未來(lái)還有好多個(gè)八年,可再多依舊彌補(bǔ)不了失去你钮莲,八年最好的時(shí)光給了彼此,最純真...
    你的世界依然絢麗閱讀 312評(píng)論 0 0
  • 街面上開(kāi)始出售桑葚子了极舔,昨天同事給兒子買了一盒链瓦。一整盒子的桑葚果子,黑黝黝油亮亮慈俯,甚是招人嘴饞,我捏了兩個(gè)放嘴里溪掀,...
    蜜雪薇薇閱讀 811評(píng)論 18 24