首页 > 编程语言 >python3 多继承时,父类有相同一个函数的选择

python3 多继承时,父类有相同一个函数的选择

时间:2023-04-14 15:37:41浏览次数:41  
标签:__ 函数 weight self print 父类 age python3 name


class People:
    name = ''
    age = 0
    __weight = 0

    def __init__(self, name, age, weight):
        print("People 初始化")
        self.age = age
        self.name = name
        self.__weight = weight
        print("People 初始化1")

    def speak(self):
        print("我叫 {},我今年 {} 岁了,我体重 {} kg。".format(self.name, self.age, self.__weight))


class Student(People):
    grade = ''

    def __init__(self, name, age, weight, grade):
        print("Student 初始化")
        People.__init__(self, name, age, weight)
        self.grade = grade
        print("Student 初始化1")

    def speak(self):
        print("我叫 {},我今年 {} 岁了,我在读 {} 。".format(self.name, self.age, self.grade))



class Musician():
    title = ''
    name = ''

    def __init__(self, name, title):
        print("Musician 初始化0")
        self.name = name
        self.title = title
        print("Musician 初始化1")

    def speak(self):
        print("我叫 {},我演奏的歌曲是 {}。".format(self.name, self.title))


class Sample(Musician,Student):
    sampleID = 0

    def __init__(self, name, age, weight, grade, title, sampleID):
        print("Sample 初始化0")

        Student.__init__(self, name, age, weight, grade)
        Musician.__init__(self, name, title)
        self.sampleID = sampleID
        print("Sample 初始化1")


    def sp(self):
        self.speak()
        """
        如果多继承时,Musician 写在前面class Sample(Musician,Student):,那么此处是 Musician.speak()
        如果多继承时,Student 写在前面class Sample(Student,Musician):,那么此处是 Student.speak()
        """

if __name__ == '__main__':
    sample_10010 = Sample("clever",18,60,"大四","《秋日的私语》",10010)
    sample_10010.speak()

标签:__,函数,weight,self,print,父类,age,python3,name
From: https://blog.51cto.com/u_14011026/6190393

相关文章

  • python3 各种方式连接mysql数据库
    print("python连接mysql数据库")#importmysql.connector"""#1使用mysql-connector连接mysqlimportmysql.connectormydb=mysql.connector.connect(host="localhost",user="clever",passwd="1881301"......
  • python3数据类型
    1、介绍python是解释型语言,变量不声明类型,而是由赋值进行确定,比如=之后的字面量或类型,或者形参接收的实参。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。2、标准数据类型包括数值number(int、float、bool、comlex)、字符串str、元组tuple、列表list、集合set、......
  • Oracle 分析函数
    说明:由于oracle默认大写,所以在本文中会出现一下大写一下小写,在oracle都可以执行,如果oracle字段为小写字段,则需要用双引号查询。需求举例需求假如存在一个需求,查询每个用户所在部门的总工资,在每个员工后面增加一个总工资字段显示。例如部门一合计为15000,部门二合计为100......
  • C++的引用变量作为函数参数
    一、问题引入在C++的中新增一个特性:按引用传递变量,虽然与按传递变量的地址可以实现相同的结果,但引用有其独特的地方。引用传递:引用经常被用作函数参数,使得函数中的变量名成为调用程序中的变量的别名。通过引用变量用作参数,函数将使用原始数据,而不是其副本。二、解决过程举......
  • python3语法
    1、编码默认情况下,Python3源码文件以UTF-8编码,所有字符串都是unicode字符串。指定不同编码:#-*-coding:cp-1252-*-2、标识符(1)首字符必须是字母或下划线(2)标识符其他字符由数字、字母和下划线组成(3)标识符对大小写敏感(4)Python3中,可以用中文作为变量名,非......
  • C语言函数大全--g开头的函数(下)
    C语言函数大全本篇介绍C语言函数大全--g开头的函数(下)17.getmodename17.1函数说明函数声明函数功能char*getmodename(intmode_name);获取指定的图形模式名17.2演示示例#include<graphics.h>#include<stdlib.h>#include<stdio.h>intmain(void){......
  • Postman接口测试之当多个接口都需要使用自定义的函数时解决方案
    //自定义时间戳的动态参数//vartimes=Date.now()//pm.globals.set("times",times);//需要随机出一个范围内的整数数,函数//constrandomInt=(min,max)=>Math.floor(Math.random()*(max-min+1))+min//pm.globals.set("randomNumber",randomInt(1000,3000));......
  • ajax使用回调函数的例子(原生代码和jquery代码)
    ajax使用回调函数的例子(原生代码和jquery代码)一、 ajax代码存在的问题(异步交互的问题)ajax所请求的url,如果因为网络等问题,很久没有回应,则给用户造成“假死”的现象。代码如下:xmlHttp=GetXmlHttpObject();xmlHttp.open();xmlHttp.send();//下面这句,会一直等待,直到有返回值......
  • 【c&c++】strdup函数简介
    strdup函数简介收藏 用法:#include<string.h> 功能:复制字符串s  说明:返回指向被复制的字符串的指针,所需空间由malloc()分配且可以由free()释放。  举例:       //strdup.c          #include<syslib.h>     #include<string.h>      mai......
  • Python中re.finditer函数的使用
    re模块简介re模块是Python标准库中的正则表达式模块。正则表达式是一种特殊的字符串处理方式,常用于匹配文本中的特定模式。re模块可以提供针对正则表达式的支持。re.finditer()函数re.finditer(pattern,string,flags=0)函数功能:扫描整个字符串,并返回对每个匹配项的迭......