Это питонная реализация?
Я вызываю вложенные функции динамически из строкового аргумента с обертками, чтобы уменьшить вероятность вызова несуществующей функции. Вот пример, где я хочу выполнить различные сравнения для arg1 и arg2 (в терминах ==,> =,
class ComparisonClass(object):
def__init__(self):
pass
def comparison(self,arg1,arg2,comparison):
def equal_to():
pass
def greater_than():
pass
def less_than():
pass
return locals()[comparison]()
def comparison_equal_to(self,arg1,arg2):
return self.comparison(arg1,arg2,'equal_to')
def comparison_greater_than(self,arg1,arg2):
return self.comparison(arg1,arg2,'greater_than')
def comparison_less_than(self,arg1,arg2):
return self.comparison(arg1,arg2,'less_than')