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简单实现计算过期时间的方法
Jun 09 Python
深入了解Python数据类型之列表
Jun 24 Python
Python操作csv文件实例详解
Jul 31 Python
简单实现python数独游戏
Mar 30 Python
对Python 2.7 pandas 中的read_excel详解
May 04 Python
python保存网页图片到本地的方法
Jul 24 Python
Python实现随机创建电话号码的方法示例
Dec 07 Python
python实现二分类的卡方分箱示例
Nov 22 Python
TensorFLow 不同大小图片的TFrecords存取实例
Jan 20 Python
Python基础之列表常见操作经典实例详解
Feb 26 Python
python3格式化字符串 f-string的高级用法(推荐)
Mar 04 Python
python Tornado框架的使用示例
Oct 19 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 生成WML页面方法详解
2009/08/09 PHP
php更改目录及子目录下所有的文件后缀扩展名的代码
2010/10/12 PHP
CI分页类首页、尾页不显示的解决方法
2016/03/28 PHP
PHP receiveMail实现收邮件功能
2018/04/25 PHP
javascript中的注释使用与注意事项小结
2011/09/20 Javascript
js浮点数保留两位小数点示例代码(四舍五入)
2013/12/26 Javascript
JavaScript中实现依赖注入的思路分享
2015/01/15 Javascript
详细分析使用AngularJS编程中提交表单的方式
2015/06/19 Javascript
jQuery实现div随意拖动的实例代码(通用代码)
2016/01/28 Javascript
浅谈react-native热更新react-native-pushy集成遇到的问题
2017/09/30 Javascript
vue的全局提示框组件实例代码
2018/02/26 Javascript
解决vue中监听input只能输入数字及英文或者其他情况的问题
2018/08/30 Javascript
vue-lazyload使用总结(推荐)
2018/11/01 Javascript
微信小程序中遇到的iOS兼容性问题小结
2018/11/14 Javascript
vue axios post发送复杂对象问题
2019/06/04 Javascript
微信小程序渲染性能调优小结
2019/07/30 Javascript
vue+axios 拦截器实现统一token的案例
2020/09/11 Javascript
python脚本生成caffe train_list.txt的方法
2018/04/27 Python
python实现求两个字符串的最长公共子串方法
2018/07/20 Python
pycharm设置鼠标悬停查看方法设置
2019/07/29 Python
python基于event实现线程间通信控制
2020/01/13 Python
Python内存映射文件读写方式
2020/04/24 Python
美国女鞋品牌:naturalizer(娜然)
2016/08/01 全球购物
李维斯法国官网:Levi’s法国
2019/07/13 全球购物
介绍一下linux的文件权限
2014/07/20 面试题
一个J2EE项目团队的主要人员组成是什么
2012/06/04 面试题
机械专业个人求职自荐信格式
2013/09/21 职场文书
大一学生假期实习的自我评价
2013/10/12 职场文书
银行职员工作失误检讨书
2014/10/14 职场文书
学生党员检讨书范文
2014/12/27 职场文书
2015大学迎新晚会主持词
2015/07/16 职场文书
工作简报格式范文
2015/07/21 职场文书
教师实习自我鉴定总结
2019/08/20 职场文书
python读取并查看npz/npy文件数据以及数据显示方法
2022/04/14 Python
winserver2019安装软件一直卡在应用程序正在为首次使用做准备
2022/06/10 Servers
python语言中pandas字符串分割str.split()函数
2022/08/05 Python