私はPython 2.7を使用しています。以下のコードのように、外部辞書を使用してそのような情報を保持する必要がないように、名前、説明、およびおそらく他のメタデータを関数に関連付ける方法はありますか?
def predicateA(v):
# some logic that eventually returns a True/False value
return True
def predicateB(v):
# some logic that eventually returns a True/False value
return False
predicateNames={}
predicateNames[predicateA]='name and description for predicateA'
predicateNames[predicateB]='name and description for predicateB'
predicates = [predicateA, predicateB]
def evalForAllPredicates(v):
for f in predicates:
result = f(v)
print "function %s returned: %s" % (predicateNames[f], result)
evalForAllPredicates(3)