Python3如何从其他类中的一个类调用方法

时间:2017-11-20 11:21:53

标签: python

我有两个A和B类,我想在B类中运行A类的方法。我编写了代码,但它没有工作,我收到以下错误:

  

属性错误:' B'对象没有属性' testPrint'

我的课程:

class A:
    def __init__(self):
        self.v = 'A'

    def test_1(self):
        i = 1
        print('Function test_1 in class A: ')
        x = self.testPrint(i) # i think error is here
        return x

    def testPrint(self, i):
        return 'testPrint: '+i

class B:
    def __init__(self):
        self.v = 'B'

    def b1(self):
        print('wywolanie funkcji z klasy b')
        f = A.test_1(self)
        return f

运行程序

b = B()
b.b1()

1 个答案:

答案 0 :(得分:1)

你需要实现A类:

class A:
    def __init__(self):
        self.v = 'A'

    def test_1(self):
        i = 1
        print('Function test_1 in class A: ')
        x = self.testPrint(i) # i think error is here
        return x

    def testPrint(self, i):
        return 'testPrint: %s' % i

class B:
    def __init__(self):
        self.v = 'B'

    def b1(self):
        print('wywolanie funkcji z klasy b')
        f = A().test_1()
        return f


b = B()
res = b.b1()
print (res)

返回(Python3):

wywolanie funkcji z klasy b
Function test_1 in class A: 
testPrint:1