python中子类调用父类函数的方法示例

作者:/Seirios/ 时间:2023-12-30 14:17:03 

前言

本文主要给大家介绍了关于python子类调用父类函数的相关内容,Python中子类中的__init__()函数会覆盖父类的函数,一些情况往往需要在子类里调用父类函数。下面话不多说了,来一起看看详细的介绍:

如下例程里,???处是需要调用父类函数的地方,接下来结合例程具体介绍。


# -*- coding:utf-8 -*-
class Student:
 def __init__(self,name):
  self.name=name
 def ps(self):
  print('I am %s'%self.name)

class Score(Student):
 def __init__(self,name,score):
  self.score=score
  ???12 12  def ps1(self):
  print('I\'m %s,%s' %(self.name,self.score))

Score('Bob','99').ps()
Score('Bob','99').ps1()

Python3.5中,通过查阅资料,有如下几种调用方式。

第一种是直接法。使用父类名称直接调用,形如 parent_class.parent_attribute(self) ,对应例程即语句:


Student.__init__(self,name)

第二种是通过super函数,形如 super(child_class, child_object).parent_attribute(arg) 。第一个参数表示调用父类的起始处,第二个参数表示类实例(一般使用self),父类方法的参数只有self时,参数args不用写。此外,类内部使用时,child_class, child_object也可省略。对应例程:


super(Score,self).__init__(name)

或者:


super().__init__(name)

在类外面也可使用super函数,但是要有child_class, child_object两个参数。

来源:http://www.cnblogs.com/seirios1993/p/6601823.html

标签:python,父类,子类
0
投稿

猜你喜欢

  • Python实现处理管道的方法

    2022-05-17 22:58:29
  • oracle 动态AdvStringGrid完美示例 (AdvStringGrid使用技巧/Cells)

    2009-06-19 17:21:00
  • Django restframework 源码分析之认证详解

    2021-08-15 12:03:40
  • MySQL表设计优化与索引 (四)

    2010-10-25 19:50:00
  • 微信支付PHP SDK之微信公众号支付代码详解

    2024-05-10 14:21:21
  • python使用adbapi实现MySQL数据库的异步存储

    2024-01-25 10:59:10
  • Python GUI编程学习笔记之tkinter中messagebox、filedialog控件用法详解

    2022-10-26 19:49:05
  • Python实现笑脸检测+人脸口罩检测功能

    2022-06-24 04:01:49
  • 详解Python中Sync与Async执行速度快慢对比

    2023-02-06 13:26:45
  • mysql sock 文件解析及作用讲解

    2024-01-26 13:15:47
  • Go语言实现登录验证代码案例

    2024-05-08 10:24:14
  • Python多线程爬虫实战_爬取糗事百科段子的实例

    2021-02-15 16:58:21
  • 61条面向对象设计的经验原则

    2008-05-08 13:05:00
  • Python基于pygame实现图片代替鼠标移动效果

    2023-10-24 13:33:34
  • 详解在Python程序中使用Cookie的教程

    2021-10-25 17:58:43
  • python 3.0 模拟用户登录功能并实现三次错误锁定

    2022-06-12 14:11:05
  • python自动翻译实现方法

    2022-01-01 08:03:31
  • 设计原则-控件Balloons(气球状提示)

    2009-08-15 12:34:00
  • 解决mysql ERROR 1045 (28000)-- Access denied for user问题

    2024-01-24 01:30:43
  • Go语言实现彩色输出示例详解

    2023-09-14 01:19:45
  • asp之家 网络编程 m.aspxhome.com