Я запускаю программу на Python (Python 2.7.5), которая вызывает функции динамически, используя метод eval. Мне нужно выяснить, существует ли функция, прежде чем я сделаю какие-либо предварительные вычисления, необходимые для ее запуска, если она существует.
Для этого я пытался использовать библиотеку Python для проверки, которая использует inspect.isfunction (foo). Однако он не может принимать динамически именованные функции в виде строки, чтобы определить, существует ли функция.
import inspect
for i in range(1, 4):
if inspect.isfunction("hello" + i):
print("Function does exist")
else:
print("Does not exist")
def hello1():
print("Hello")
def hello3():
print("Hello2")
В данный момент он не возвращает правильное логическое значение относительно того, существует ли функция. Есть ли способ преобразовать «привет» + 1 в саму функцию (hello1 вместо «hello1»)