import importlib.util spec = importlib.util.spec_from_file_location("module.name", "../../rpc/__main__.py") CortexRPC = importlib.util.module_from_spec(spec) spec.loader.exec_module(CortexRPC) if __name__ == '__main__': def get_params(key, value): print('get params.') return 'test' def set_param(key, value): print('log param. {}: {}'.format(key, value)) return 'ok' def ready: return 'ready' def process_cmd(cmd, payload): print('process command', cmd, payload) return 'processed' # this will block rpc = CortexRPC(get_params, set_param, ready, process_cmd)