python局部变量()冗余使用
嗨,我对使用locals()有点陌生,我研究过locals()的意思是将函数中的变量当作字典。如果这个函数与下面的locals()函数相同,我们会得到一组。我是一个有原则的人,但在这个领域却不是。我将如何简化此操作或任何其他方法python局部变量()冗余使用,python,Python,嗨,我对使用locals()有点陌生,我研究过locals()的意思是将函数中的变量当作字典。如果这个函数与下面的locals()函数相同,我们会得到一组。我是一个有原则的人,但在这个领域却不是。我将如何简化此操作或任何其他方法 def home_creation(self, property, item): def date(data): return data def rate(data): return data
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
您可以定义自己的字典来限制允许使用的方法:
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)
对不起,我不太明白你的意思。顺便说一句,这个函数在一个类下。不要使用
局部变量
,只需定义自己的字典,或者使用如果elif else
@juanpa.arrivillaga,为什么不使用局部变量呢?如何交替执行?使用函数的dict
。看乌列尔的answer@juanpa.arrivillaga也看到了这个