Python类super()及私有属性原理解析


Posted in Python onJune 15, 2020

super()有参数写法:

# 1.定义父类
class A(object):
  def __init__(self):
    self.num = 1
  def info_print(self):
    print(self.num)

class C(A):
  def __init__(self):
    self.num = 2
  def info_print(self):
    print(self.num)
    super(C, self).__init__()
    super(C, self).info_print()
# 2. 定义子类,继承父类

class B(C):
  def __init__(self):
    self.num = 3

  def info_print(self):
    self.__init__()
    print(self.num)

  def print_A(self):
    A.__init__(self)
    A.info_print(self)

  def print_C(self):
    C.__init__(self)
    C.info_print(self)

  def print_AC(self):
    super(B, self).__init__()
    super(B, self).info_print()
b = B()
b.print_AC()

super()用于调用父类的方法

无参写法:

super().__init__()
super().info_print()

使用super()方法可以自动查找父类,查找顺序遵循__mro__类属性的顺序

私有属性与方法

设置私有极限的方法:在属性名和方法名前面加上两个下划线__

设置之后设置的实例属性或实例方法不继承给子类

获取和修改私有属性:

在类中添加函数:

def get_money(self):
  return self.__money
def set_money(self, money):
  self.__money = money

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python中 ? : 三元表达式的使用介绍
Oct 09 Python
python中while循环语句用法简单实例
May 07 Python
Python使用正则表达式实现文本替换的方法
Apr 18 Python
python基本语法练习实例
Sep 19 Python
Python中多个数组行合并及列合并的方法总结
Apr 12 Python
python日期时间转为字符串或者格式化输出的实例
May 29 Python
Python中关键字global和nonlocal的区别详解
Sep 03 Python
python多线程http压力测试脚本
Jun 25 Python
python3实现带多张图片、附件的邮件发送
Aug 10 Python
django认证系统实现自定义权限管理的方法
Aug 28 Python
Python3 合并二叉树的实现
Sep 30 Python
Python3实现建造者模式的示例代码
Jun 28 Python
Keras 实现加载预训练模型并冻结网络的层
Jun 15 #Python
Python StringIO及BytesIO包使用方法解析
Jun 15 #Python
Python smtp邮件发送模块用法教程
Jun 15 #Python
pandas数据处理之绘图的实现
Jun 15 #Python
keras中的loss、optimizer、metrics用法
Jun 15 #Python
使用keras实现Precise, Recall, F1-socre方式
Jun 15 #Python
基于python和flask实现http接口过程解析
Jun 15 #Python
You might like
一个PHP操作Access类(PHP+ODBC+Access)
2007/01/02 PHP
判断Keep-Alive模式的HTTP请求的结束的实现代码
2011/08/06 PHP
php+ajax做仿百度搜索下拉自动提示框(有实例)
2012/08/21 PHP
php-perl哈希算法实现(times33哈希算法)
2013/12/30 PHP
PHP安装memcached扩展笔记
2015/05/28 PHP
利用PHP fsockopen 模拟POST/GET传送数据的方法
2015/09/22 PHP
win10 apache配置虚拟主机后localhost无法使用的解决方法
2018/01/27 PHP
Yii框架ACF(accessController)简单权限控制操作示例
2019/04/26 PHP
PHP利用curl发送HTTP请求的实例代码
2020/07/09 PHP
用cookies实现的可记忆的样式切换效果代码下载
2007/12/24 Javascript
jQuery-ui中自动完成实现方法
2010/06/10 Javascript
Jquery中删除元素的实现代码
2011/12/29 Javascript
密码强度检测效果实现原理与代码
2013/01/04 Javascript
使用delegate方法为一个tr标签加一个链接
2014/06/27 Javascript
jquery插件pagination实现无刷新ajax分页
2015/09/30 Javascript
angularjs 表单密码验证自定义指令实现代码
2016/10/27 Javascript
JavaScript和JQuery获取DIV值的方法示例
2017/03/07 Javascript
layui分页效果实现代码
2017/05/19 Javascript
angula中使用iframe点击后不执行变更检测的问题
2020/05/10 Javascript
JavaScript代码简化技巧实例解析
2020/09/09 Javascript
vue图片裁剪插件vue-cropper使用方法详解
2020/12/16 Vue.js
你应该知道的python列表去重方法
2017/01/17 Python
python实现解数独程序代码
2017/04/12 Python
Python使用Django实现博客系统完整版
2020/09/29 Python
Python使用pydub库对mp3与wav格式进行互转的方法
2019/01/10 Python
jupyter 实现notebook中显示完整的行和列
2020/04/09 Python
CSS3 实现footer 固定在底部(无论页面多高始终在底部)
2019/10/15 HTML / CSS
HTML5标签使用方法详解
2015/11/27 HTML / CSS
2014三八妇女节活动总结
2014/03/01 职场文书
学校标语大全
2014/06/19 职场文书
2014年小学教导处工作总结
2014/12/19 职场文书
2015年小学英语教师工作总结
2015/05/12 职场文书
红白喜事主持词
2015/07/06 职场文书
2016年安康杯竞赛活动总结
2016/04/05 职场文书
实用求职信模板范文
2019/05/13 职场文书
「我的青春恋爱物语果然有问题。-妄言录-」第20卷封面公开
2022/03/21 日漫