深入浅析python继承问题


Posted in Python onMay 29, 2016

有如下的代码:

class p1:
def __init__(self,a,b):
print("init in p1")
self.a1=a
self.b1=b
self.f1()
def f1(self):
print("f1 in p1")
class c1(p1):
def __init__(self,a,b,c=2):
print("init in c1")
p1.__init__(self,a,b)
self.c1=c
self.f1()
def f1(self):
print("f1 in p2")
class c2(c1):
pass
c=c2(11,22)
print(c.a1)
print(c.b1)
print(c.c1)

然后代码的运行结果如下:

F:\python_code\test>python class_init.py
init in c1
init in p1
f1 in p2
f1 in p2
11
22
2

关于的代码的运行过程,我有以下的疑问,我在 c1 的 __init__ 函数中会调用到p1.__init__(),然后会每次都是运行 c1.f1() 函数,没有运行 p1.f1() 的函数,在 p1 运行的 f1(),怎么也是 c1.f1()。为什么?

原因分析:

p1.__init__(self,a,b)

这行代码中的self是c1的对象。所以传给p1里面的self也就是c1的呀。

以上内容所述通过代码给大家介绍了python继承问题,希望对大家有所帮助!

Python 相关文章推荐
在Django的URLconf中进行函数导入的方法
Jul 18 Python
详解Python的Flask框架中生成SECRET_KEY密钥的方法
Jun 07 Python
python使用标准库根据进程名如何获取进程的pid详解
Oct 31 Python
解决pycharm安装后代码区不能编辑的问题
Oct 28 Python
Flask框架模板继承实现方法分析
Jul 31 Python
浅析python中while循环和for循环
Nov 19 Python
python matplotlib 画dataframe的时间序列图实例
Nov 20 Python
Python随机数函数代码实例解析
Feb 09 Python
python字符串常用方法及文件简单读写的操作方法
Mar 04 Python
使用python实现名片管理系统
Jun 18 Python
Python tkinter实现日期选择器
Feb 22 Python
Pytorch反向传播中的细节-计算梯度时的默认累加操作
Jun 05 Python
Python的几个高级语法概念浅析(lambda表达式闭包装饰器)
May 28 #Python
python自动翻译实现方法
May 28 #Python
详解Python编程中对Monkey Patch猴子补丁开发方式的运用
May 27 #Python
Python程序中的观察者模式结构编写示例
May 27 #Python
Windows下python2.7.8安装图文教程
May 26 #Python
Java Web开发过程中登陆模块的验证码的实现方式总结
May 25 #Python
剖析Python的Twisted框架的核心特性
May 25 #Python
You might like
CI框架源码解读之URI.php中_fetch_uri_string()函数用法分析
2016/05/18 PHP
php无限级分类实现方法分析
2016/10/19 PHP
网站上面有这种切换效果
2006/06/26 Javascript
Mootools 1.2教程 同时进行多个形变动画
2009/09/15 Javascript
jquery 操作单选框,复选框,下拉列表实现代码
2009/10/27 Javascript
js loading加载效果实现代码
2009/11/24 Javascript
jquery通过load获取文件的内容并跳到锚点的方法
2015/01/29 Javascript
js获取form的方法
2015/05/06 Javascript
js使用cookie记录用户名的方法
2015/11/26 Javascript
jQuery给元素添加样式的方法详解
2015/12/30 Javascript
javascript实现checkbox复选框实例代码
2016/01/10 Javascript
Python自定义一个类实现字典dict功能的方法
2019/01/19 Python
在Python函数中输入任意数量参数的实例
2019/07/16 Python
Django连接数据库并实现读写分离过程解析
2019/11/13 Python
在python中利用dict转json按输入顺序输出内容方式
2020/02/27 Python
python selenium操作cookie的实现
2020/03/18 Python
关于jupyter打开之后不能直接跳转到浏览器的解决方式
2020/04/13 Python
python tkiner实现 一个小小的图片翻页功能的示例代码
2020/06/24 Python
Python爬虫之App爬虫视频下载的实现
2020/12/08 Python
使用CSS3的ruby-position固定注音位置的用法示例
2016/07/05 HTML / CSS
LA MER海蓝之谜美国官网:传奇面霜
2016/08/27 全球购物
C++的几个面试题附答案
2016/08/03 面试题
C#如何进行LDAP用户校验
2012/11/21 面试题
求职信范文英文版
2014/01/05 职场文书
班主任工作经验材料
2014/02/02 职场文书
卫生巾广告词
2014/03/18 职场文书
《荷花》教学反思
2014/04/16 职场文书
《长江之歌》教学反思
2014/04/17 职场文书
我的梦中国梦演讲稿
2014/04/23 职场文书
爱国主义演讲稿
2014/05/07 职场文书
促销活动总结模板
2014/07/01 职场文书
民族学专业职业生涯规划范文:积跬步以至千里
2014/09/11 职场文书
稽核岗位职责
2015/02/10 职场文书
2016春节放假通知范文
2015/08/18 职场文书
六一儿童节致辞稿(3篇)
2019/07/11 职场文书
Java存储没有重复元素的数组
2022/04/29 Java/Android