Из серии строк я пытаюсь вызвать методы внутри класса. К сожалению, метод не вызывается должным образом, так как ему требуется self
, чтобы указать, что он является внутренним для класса. Как я могу исправить эту логику?
class SomeClass(object):
def apply(self):
rules = [{'action': 'replace'}, {'action': 'split'}, {'action': 'remove'}]
return [eval('_perform_' + r['action'])() for r in rules
if r['action'] in ['replace', 'split', 'remove']] def _perform_replace(self):
print("performing replace") def _perform_split(self):
print("performing split") def _perform_remove(self):
print("performing remove") SomeClass().apply()
Это вызывает следующее исключение:
NameError: имя '_perform_replace' не определено