您好我有点使用locals(),我研究过locals()意味着将函数中的变量视为字典。如果这个函数具有与locals()相同的函数,我们有一堆。我是DRY原则的人,但在这方面它不是。我将如何简化这种或其他方式?
def home_creation(self, property, item):
def date(data):
return data
def rate(data):
return data
if property in locals():
return locals()[property](item)
else:
return None
答案 0 :(得分:0)
您可以定义自己的字典以限制允许的使用方法:
def home_creation(self, property, item):
def date(data):
return data
def rate(data):
return data
functions = {
'date': date,
'rate': rate
}
return functions.get(property, lambda: None)(item)