Я хотел бы перебрать различные функции. Я посмотрел в itertools, и я не нашел там ничего уместного.
Я ищу что-то вроде этого:
import mymod
import sys
mymodule= sys.module[__name__]
if __name__ == 'main':
function_list1=['mymod.f1','mymod.f1(keyword=True)','mymod.f2']
for func in function_list1:
try:
print(getattr(mymod,func)()) # problem: how do I call the keyword
except Exception, e:
print(e)
function_list2=['f1','f2']
for func in function_list2:
getattr(mymodule,func)()
Я отредактировал код, потому что хочу сделать явным, что я хочу вызвать функцию из другого модуля и текущего модуля. И я могу захотеть передать ключевое слово в функцию
module mymod
- это набор функций, он импортирует некоторые внешние модули и некоторые модули, написанные мной, а затем определяет функции, которые используют только локальные переменные
import sys
def f1(keyword=False, keyword2='something', keyword3=0.5):
a = 2
return a