我想在类中定义的函数中使用类对象作为参数:
def f(x):
return 2*x
class klass(object):
def __init__(self,func):
self._func=func
def plus(self):
v_val = [1, 2, 3, 4]
funcs=[func(v) for v in v_val]
s=0
for i in funcs:
s=s+i
return s
test=klass(f)
print (test.plus())
如何在“plus()”函数中将“object”作为参数“func”传递? 我试过“self._func = func”,但它不起作用。
答案 0 :(得分:0)
您需要在self.func
中定义self._func
而不是Klass.__init__()
然后在self.func
func
理解中拨打funcs
而不是Klass
class Klass(object):
def __init__(self, func):
self.func = func
def plus(self):
v_val = [1, 2, 3, 4]
funcs = [self.func(v) for v in v_val]
s = 0
for i in funcs:
s = s + i
return s
def f(x):
return 2 * x
test = Klass(f)
print (test.plus())