我们没有为我们的应用程序类定义一个__init__()方法。在Python中,这就意
味着父方法wx.App.__init()__将在对象创建时被自动调用。这是一个好的事情。如果
你定义你自己的__init__()方法,不要忘了调用其基类的__init()__方法,示例如下:
自动调用父类的__init__方法:
# !/usr/bin/env python
# -*- coding: utf-8 -*-
class A(object):
def __init__(self):
print '----------call A---------------'
self.a = 5
def function_a(self):
print('I am from A, my value is %d' % self.a)
class B(A):
b=122
# print '-------------call B---------------'
# def __init__(self):
# # A.__init__(self) # 此处修改了。如果类A的__init__方法需要传参,也需要传入对应的参数
#
# self.b = 10
def function_b(self):
print('I am from B, my value is %d' % self.b)
self.function_a() # 调用类A的方法,出错
if __name__ == '__main__':
b = B()
b.function_b()
C:Python27python.exe C:/Users/TLCB/PycharmProjects/untitled/wxpython/t6.py
----------call A---------------
I am from B, my value is 122
I am from A, my value is 5