gpt4 book ai didi

python - 类字段作为 Python 中的函数指针

转载 作者:太空宇宙 更新时间:2023-11-04 03:25:26 25 4
gpt4 key购买 nike

我想在我的类 Point 中有一个函数指针。

class Point:
coord=[]

def value(self,p_coord:list=coord):
return abs(self.val(p_coord))

def __init__(self,p_coord:list,p_val):
self.coord=p_coord
self.val=p_val

我试图将一个函数指针传递给字段“val”,但是当我尝试使用方法 value() 调用该函数时,它返回 0:

def length(par:list):
return len(par)

v1=Point([1, 2, 3],length)
print(v1.value())

如何将函数传递给类字段?

最佳答案

value 中的默认值 coord 是第 2 行的类属性,它与实例属性 self.coord 集不同在 __init__ 中。所以函数指针工作正常,它只是查看了错误的列表。

你可以做的是:

def value(self, p_coord=None):
if not p_coord:
p_coord = self.coord
return abs(self.val(p_coord))

关于python - 类字段作为 Python 中的函数指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33223444/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com