以级联顺序调用多个函数(不是嵌套函数)

问题描述 投票:-1回答:1

我正在尝试执行以下操作:

如果我有:

class A():
    def a(self):
        return 1

class B():
    def b(self):
        return A()

我可以:

new_b = B()
new_b.b().a() # this returns 1

我的问题是:

如何在b().a()方法中将ba作为函数参数给出的a?>

即:以下内容:

def f(f1, f2):
    return f1().f2()

new_a = A()
f_a = new_a.a
new_b = B()
f_b = new_b.b

f(f_b, f_a) # error

错误:

Traceback (most recent call last):   File "<stdin>", line 1, in <module>   File "<stdin>", line 2, in f
AttributeError: 'A' object has no attribute 'f2'

此外,我可以提供f_b作为字符串"b"并且仍然可以调用它吗?

我正在尝试执行以下操作:如果我有:class A():def a(self):返回1 class B():def b(self):return A()我可以这样做:new_b = B( )new_b.b()。a()#这会返回...

python python-3.x lambda reflection func
1个回答
0
投票

我认为您要为此更改功能

© www.soinside.com 2019 - 2024. All rights reserved.