python中子类继承父类的__init__方法实例
前言
使用Python写过面向对象的代码的同学,可能对 __init__
方法已经非常熟悉了,__init__
方法在类的一个对象被建立时,马上运行。这个方法可以用来对你的对象做一些你希望的 初始化 。
注意:这个名称的开始和结尾都是双下划线。
父类A
class A(object): def __init__(self, name): self.name=name print "name:", self.name def getName(self): return 'A ' + self.name
子类不重写__init__
, 实例化子类时,会自动调用父类定义的__init__
class B(A): def getName(self): return 'B '+self.name if __name__=='__main__': b=B('hello') print b.getName()
执行
$python lei2.py name: hello B hello
但重写了__init__
时,实例化子类,就不会调用父类已经定义的__init__
class A(object): def __init__(self, name): self.name=name print "name:", self.name def getName(self): return 'A ' + self.name class B(A): def __init__(self, name): print "hi" self.name = name def getName(self): return 'B '+self.name if __name__=='__main__': b=B('hello') print b.getName()
执行
$python lei2.py hi B hello
为了能使用或扩展父类的行为,最好显示调用父类的__init__
方法
class A(object): def __init__(self, name): self.name=name print "name:", self.name def getName(self): return 'A ' + self.name class B(A): def __init__(self, name): super(B, self).__init__(name) print "hi" self.name = name def getName(self): return 'B '+self.name if __name__=='__main__': b=B('hello') print b.getName()
执行
$python lei2.py name: hello hi B hello
总结
以上就是关于python子类继承父类的__init__方法的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。
- python中子类与父类的关系基础知识点
- python 子类调用父类的构造函数实例
- Python实现子类调用父类的初始化实例
- Python子类继承父类构造函数详解
- Python 实现子类获取父类的类成员方法
- python中子类调用父类函数的方法示例
- Python实现子类调用父类的方法
- python支持多继承吗
- python继承threading.Thread实现有返回值的子类实例
- Python多重继承之菱形继承的实例详解
- python子类如何继承父类的实例变量
转载请注明出处:http://www.zhongtian365.com/article/20230519/41521.html
随机推荐
-
如何在Python中子对象的所有实例中持久化父配置对象?
我是OOP python的新手,一直在这个问题上犯错,下面是我的类:class SFTP: ? Just a wrapper around pysftp module with extra functionality ? ...
-
在python中永久设置种子
我已经阅读了几个问题,包括那些专门针对numpy的问题。然而,我只是对在random中永久设置seed感兴趣,因此在每次调用时使用random.random()生成相同的随机float。下面是我所做的:import random rando...
-
python 多线程中子线程和主线程相互通信方法
需求:主线程开启了多个线程去干活,每个线程需要完成的时间不同,但是在干完活以后都要通知给主线程 下面上代码: #!/usr/bin/python # coding:utf8 ''' 多线程和queue配合使用,实现子线程和主线程相互通...
-
Python中子数据帧的Groupby和应用函数
如何通过item和date进行分组,然后对于每个子数据帧,获得实际行,其中data‘值是子数据帧中的实际中间值?有时有多个行的data等于中间值,在这种情况下,我们只保留第一行。df: item date data ...
-
Python实现解析Bit Torrent种子文件内容的方法
本文实例讲述了Python实现解析BitTorrent种子文件内容的方法。分享给大家供大家参考,具体如下: 有很多种子文件,有时候记不清里面都是什么东西,又不想一个一个的拖放到迅雷或BT软件里头看, 上网查了一下Python的脚本,自己也...
-
如何在python中基于某个种子生成具有重复项的数字列表
我不知道如何根据某个种子生成具有重复项的数字列表。我已经尝试使用下面的代码,但它不能生成有重复的数字random.seed(3340) test = random.sample(range(100), 100000)复制我认为这是可行的,但...
-
在python中设置程序范围内的随机种子
我有一个相当大的程序,在这里我使用random模块中不同文件中的函数。我希望能够在一个位置设置一次随机种子,以使程序始终返回相同的结果。可以做到python吗?
-
Python多重子正则表达式
最初使用这样的工作脚本遍历文件夹中的csv文件并替换为一个子字符串:import fileinput import os import glob #### Directory and file mask this = rC:\work\P...
-
将随机种子绑定到python中类的实例
假设我有一个TestClass()类,它的方法返回由random、numpy或scipy模块生成的随机数。假设TestClass()的两个实例t1和t2总是生成相同的随机数,在不修改TestClass()的内容的情况下,如何才能做到这一点呢...
-
关于初始种子自动选取的区域生长实例(python+opencv)
算法中,初始种子可自动选择(通过不同的划分可以得到不同的种子,可按照自己需要改进算法),图分别为原图(自己画了两笔为了分割成不同区域)、灰度图直方图、初始种子图、区域生长结果图。 另外,不管时初始种子选择还是区域生长,阈值选择很重要。 ...