python: multiple inheritance

多继承:

# encoding: utf-8
# Author    : geovindu,Geovin Du 涂聚文.
# IDE       : PyCharm 2023.1 python 11
# Datetime  : 2023/7/3 14:21
# User      : geovindu
# Product   : PyCharm
# Project   : pythonProject
# File      : Father.py
# explain   : 学习
import sys
import os


class Father(object):
    """
    父类
    """
    def __init__(self, money):
        self._money = money

    @property
    def Money(self):
        """
        财富
        :return:
        """
        return self._money

    @Money.setter
    def Money(self, money):
        """
        财富
        :param money:
        :return:
        """
        self._money = money


# encoding: utf-8
# Author    : geovindu,Geovin Du 涂聚文.
# IDE       : PyCharm 2023.1 python 11
# Datetime  : 2023/7/3 14:18
# User      : geovindu
# Product   : PyCharm
# Project   : pythonProject
# File      : Mother.py
# explain   : 学习


import os
import sys


class Mother(object):
    """
    母类
    """
    def __init__(self, faceValue):
        """

        :param faceValue: 颜值
        """
        self._facevalue = faceValue

    @property
    def FaceValue(self):
        """
        颜值
        :return:
        """
        return self._facevalue

    @FaceValue.setter
    def FaceValue(self, facevalue):
        """
        颜值
        :param facevalue:
        :return:
        """
        self._facevalue = facevalue


# encoding: utf-8
# Author    : geovindu,Geovin Du 涂聚文.
# IDE       : PyCharm 2023.1 python 11
# Datetime  : 2023/7/3 14:22
# User      : geovindu
# Product   : PyCharm
# Project   : pythonProject
# File      : Son.py
# explain   : 学习

import os
import sys
import Father
import Mother


class Son(Father.Father, Mother.Mother):
    """
    儿子继承父类和母类
    多继承
    """

    def __init__(self, money: str, faceValue: str, work: str):
        """
        多继承的用法
        :param money:
        :param faceValue:
        :param work:
        """
        self._work = work
        Father.Father.__init__(self, money)
        Mother.Mother.__init__(self, faceValue)

    @property
    def Work(self):
        """
        个性
        :return:
        """
        return self._work

    @Work.setter
    def Work(self, work):
        """
        个性
        :param work:
        :return:
        """
        self._work = work

    def Personality(self):
        """
        显示各特性的方法
        :return:
        """
        print(f"儿类的个性有:父的[{self.Money}]母的[{self.FaceValue}]自身变异特有的[{self._work}]")

  

调用:

    print_hi('PyCharm,Geovin Du,涂聚文')
    sn=Son.Son("财富","颜值","帅气");
    sn.Personality()

  

输出:

Hi, PyCharm,Geovin Du,涂聚文
儿类的个性有:父的[财富]母的[颜值]自身变异特有的[帅气]

  

 另一写法多继承,一样作用:

# encoding: utf-8
# Author    : geovindu,Geovin Du 涂聚文.
# IDE       : PyCharm 2023.1 python 11
# Datetime  : 2023/7/3 14:21
# User      : geovindu
# Product   : PyCharm
# Project   : pythonProject
# File      : Father.py
# explain   : 学习
import sys
import os


class Father(object):
    """
    父类
    """
    def __init__(self): #, money
        self._money = ""

    @property
    def Money(self):
        """
        财富
        :return:
        """
        return self._money

    @Money.setter
    def Money(self, money):
        """
        财富
        :param money:
        :return:
        """
        self._money = money


# encoding: utf-8
# Author    : geovindu,Geovin Du 涂聚文.
# IDE       : PyCharm 2023.1 python 11
# Datetime  : 2023/7/3 14:18
# User      : geovindu
# Product   : PyCharm
# Project   : pythonProject
# File      : Mother.py
# explain   : 学习


import os
import sys


class Mother(object):
    """
    母类
    """
    def __init__(self):#, faceValue
        """

        :param faceValue: 颜值
        """
        self._facevalue = ""

    @property
    def FaceValue(self):
        """
        颜值
        :return:
        """
        return self._facevalue

    @FaceValue.setter
    def FaceValue(self, facevalue):
        """
        颜值
        :param facevalue:
        :return:
        """
        self._facevalue = facevalue


# encoding: utf-8
# Author    : geovindu,Geovin Du 涂聚文.
# IDE       : PyCharm 2023.1 python 11
# Datetime  : 2023/7/3 14:22
# User      : geovindu
# Product   : PyCharm
# Project   : pythonProject
# File      : Son.py
# explain   : 学习

import os
import sys
import Father
import Mother


class Son(Father.Father, Mother.Mother):
    """
    儿子继承父类和母类
    多继承
    """

    def __init__(self): #, money: str, faceValue: str, work: str
        """
        多继承的用法
        :param money:
        :param faceValue:
        :param work:
        """
        self._work =""
        Father.Father.__init__(self)
        Mother.Mother.__init__(self)

    @property
    def Work(self):
        """
        个性
        :return:
        """
        return self._work

    @Work.setter
    def Work(self, work):
        """
        个性
        :param work:
        :return:
        """
        self._work = work

    def Personality(self):
        """
        显示各特性的方法
        :return:
        """
        print(f"儿类的个性有:父的[{self.Money}]母的[{self.FaceValue}]自身变异特有的[{self._work}]")

  

 调用:

    print_hi('PyCharm,Geovin Du,涂聚文')
    sn=Son.Son();#"财富","颜值","帅气"
    sn.Money="财富"
    sn.FaceValue="颜值"
    sn.Work="帅气"
    sn.Personality()

  

输出:

Hi, PyCharm,Geovin Du,涂聚文
儿类的个性有:父的[财富]母的[颜值]自身变异特有的[帅气]

  

 

 

 

单继承:

class Gold(object):
    """

    """
    def __init__(self,name:str,color:str):
        self._name=name
        self._color=color

    def intrudce(self):
        print(f"")

import Gold


class GoldPear(Gold.Gold):

    def __init__(self,name:str,color:str,category:str):
        super().__init__(name,color)
        self._category=category

  

 

posted @ 2023-07-02 16:25  ®Geovin Du Dream Park™  阅读(19)  评论(0)    收藏  举报