# Code evaluation from strings

import sys

def func2name(func): return (func.__module__, func.__name__)

def name2func(module_name, func_name):
    return getattr(__import__(module_name), func_name)

def call_by_name(module_name, func_name, args, kw_args):
    return name2func(module_name, func_name)(*args, **kw_args)
