亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python繼續找對象的示例分析

發布時間:2022-01-17 09:08:44 來源:億速云 閱讀:164 作者:小新 欄目:開發技術

這篇文章將為大家詳細講解有關python繼續找對象的示例分析,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

    面向對象三大特征:封裝、繼承、多態

    python繼續找對象的示例分析

    1、封裝(提高程序的安全性)

    class Car:
        def __init__(self,brand):
            self.brand=brand
        def start(self):
            print('自行車已被蹬跑')
    car=Car('自行車')
    car.start()
    print(car.brand)

    運行結果

    自行車已被蹬跑
    自行車

    python繼續找對象的示例分析

    一開始它報錯說沒有定義name,我找老大一會不知道哪錯了,原來是第六行

    self.name,那個時候寫成,了。

    看在stu里邊有哪些方法?就這樣寫

    python繼續找對象的示例分析

    在類的外部可以通過_Student(類名)_ _age(不希望被訪問的)進行訪問

    class Student:
        def __init__(self,name,age):
            self.name=name
            self.__age=age #年齡不希望在類的外部使用,所以加了兩個_
        def show(self):
            print(self.name,self.__age)
    stu=Student('張三',20)
    stu.show()
    #在類的外部使用name和age
    print(stu.name)
    print(dir(stu))
    print(stu._Student__age)
    張三 20
    張三
    ['_Student__age', '__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'name', 'show']
    20

    2、繼承(提高代碼的復用性)

    python繼續找對象的示例分析

    python繼續找對象的示例分析

    python繼續找對象的示例分析

    class Person(object):
        def __init__(self,name,age):
            self.name=name
            self.age=age
        def info(self):
            print(self.name,self.age)
    class Student(Person):
        def __init__(self,name,age,stu_no):
            super().__init__(name,age)
            self.stu_no=stu_no
    class Teacher(Person):
        def __init__(self,name,age,teacherofyear):
            super(Teacher, self).__init__(name,age)
            self.teacherofyear=teacherofyear
    stu=Student('張三',20,'1001')
    teacher=Teacher('李四',34,10)
    stu.info()
    teacher.info()

    張三 20
    李四 34

    3、方法重寫

    python繼續找對象的示例分析

    此時只能輸出學號,不滿足需求

    class Person(object):
        def __init__(self,name,age):
            self.name=name
            self.age=age
        def info(self):
            print(self.name,self.age)
    class Student(Person):
        def __init__(self,name,age,stu_no):
            super().__init__(name,age)
            self.stu_no=stu_no
        def info(self):
            print(self.stu_no)
    class Teacher(Person):
        def __init__(self,name,age,teacherofyear):
            super(Teacher, self).__init__(name,age)
            self.teacherofyear=teacherofyear
    stu=Student('張三',20,'1001')
    teacher=Teacher('李四',34,10)
    stu.info()
    teacher.info()

    1001
    李四 34

    看下邊的重載

    class Person(object):
        def __init__(self,name,age):
            self.name=name
            self.age=age
        def info(self):
            print(self.name,self.age)
    class Student(Person):
        def __init__(self,name,age,stu_no):
            super().__init__(name,age)
            self.stu_no=stu_no
        def info(self):
            super(Student, self).info()
            print(self.stu_no)
    class Teacher(Person):
        def __init__(self,name,age,teacherofyear):
            super(Teacher, self).__init__(name,age)
            self.teacherofyear=teacherofyear
    stu=Student('張三',20,'1001')
    teacher=Teacher('李四',34,10)
    stu.info()
    print('----------------------------')
    teacher.info()

    運行結果

    張三 20
    1001
    ----------------------------
    李四 34

    把教齡輸出

    class Person(object):
        def __init__(self,name,age):
            self.name=name
            self.age=age
        def info(self):
            print(self.name,self.age)
    class Student(Person):
        def __init__(self,name,age,stu_no):
            super().__init__(name,age)
            self.stu_no=stu_no
        def info(self):
            super(Student, self).info()
            print(self.stu_no)
    class Teacher(Person):
        def __init__(self,name,age,teachofyear):
            super().__init__(name,age)
            self.teachofyear=teachofyear
        def info(self):
            super().info()
            print('教齡',self.teachofyear)
    stu=Student('張三',20,'1001')
    teacher=Teacher('李四',34,10)
    stu.info()
    print('----------------------------')
    teacher.info()

    運行結果

    張三 20
    1001
    ----------------------------
    李四 34
    教齡 10   

    4、object類

    python繼續找對象的示例分析

    5、多態(提高程序的可拓展性和可維護性)

    python繼續找對象的示例分析

    python繼續找對象的示例分析

    Java就是靜態語言,python就是動態語言

    6、特殊方法和特殊屬性 特殊方法

    python繼續找對象的示例分析

    兩個特殊的方法----創建

    1初始化init

    2new

    特殊屬性

    兩個下劃線開始,兩個下劃線結束就是特殊屬性

    python繼續找對象的示例分析

    綁定兩個屬性

    class A:
        pass
    class B:
        pass
    class C(A,B):
        def __init__(self,name,age):
            self.name=name
            self.age=age
    #創建C類的對象
    x=C('Jack',20)#x是C類的一個實例對象
    print(x.__dict__)
    {'name': 'Jack', 'age': 20}

    pycharm使用的小發現

    點擊加號那里,就會釋放,點擊減號就會縮成這樣,這說明了被縮起來的內容都是隸屬于這個類的。

    python繼續找對象的示例分析

    看最左側出現了箭頭,他的意思是重寫person類中的方法

    python繼續找對象的示例分析

    英文

    python繼續找對象的示例分析

    關于“python繼續找對象的示例分析”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

    向AI問一下細節

    免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

    AI

    莲花县| 临猗县| 宁强县| 南开区| 大同市| 玛沁县| 名山县| 汝州市| 印江| 获嘉县| 安新县| 沅陵县| 和顺县| 揭西县| 姚安县| 航空| 西华县| 甘德县| 基隆市| 三河市| 陵水| 桃园县| 靖远县| 溆浦县| 太康县| 东乡县| 凌云县| 政和县| 逊克县| 行唐县| 华阴市| 通江县| 庆元县| 长阳| 游戏| 开江县| 古田县| 蒙阴县| 昌黎县| 永定县| 弥勒县|