在Python中的对象之间进行通信 [英] Communicating between objects in Python

查看:152
本文介绍了在Python中的对象之间进行通信的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

  class exampleClass(object):

def doSomething( self,number):
return number + 1

class exampleClass2(exampleClass):
def callDefDoSomething(self):
print exampleClass.doSomething(5)

exampleClass2.callDefDoSomething()

-

  TypeError:未绑定的方法callDefDoSomething()必须以exampleClass2实例作为第一个参数调用
(没有任何改变)

我开始学习Python中的对象,但是我找不到解决方案:($ / b> $ b $ div class =h2_lin >解决方案

您需要创建一个类的实例,即一个活动对象,以使其工作:

  class exampleClass(object):

def doSomething(self,number):
return number + 1

class exampleClass2(exampleClass):

def __init __( self):
self.member1 = exampleClass()
$ b $ def def callDefDoSomething(self):
print self.member1.doSomething(5)


object2 = exampleClass2()
object2.callDefDoSomething()


I have something like this:

class exampleClass(object):

    def doSomething(self,number):
        return number + 1

class exampleClass2(exampleClass):
    def callDefDoSomething(self):
        print exampleClass.doSomething(5)

exampleClass2.callDefDoSomething()

-

TypeError: unbound method callDefDoSomething() must be called
with exampleClass2 instance as first argument (got nothing instead)

I started to learn about objects in Python but i cant find solution for this :(

解决方案

You need to create an instance of the class, i.e., an active object, to make things work:

class exampleClass(object):

    def doSomething(self,number):
        return number + 1 

class exampleClass2(exampleClass):

    def __init__(self):
        self.member1 = exampleClass()

    def callDefDoSomething(self):
        print self.member1.doSomething(5)


object2 = exampleClass2()
object2.callDefDoSomething()

这篇关于在Python中的对象之间进行通信的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆