I’m looking for a better way to call functions based on a variable in Python vs using if/else statements like below. Each status code has a corresponding function
if status == 'CONNECT': return connect(*args, **kwargs) elif status == 'RAWFEED': return rawfeed(*args, **kwargs) elif status == 'RAWCONFIG': return rawconfig(*args, **kwargs) elif status == 'TESTFEED': return testfeed(*args, **kwargs) ...
I assume this will require some sort of factory function but unsure as to the syntax
The canonical way to do this is to use a dictionary to emulate
switchorif/elif. You will find several questions to similar problems here on SO.Put your functions into a dictionary with your status codes as keys: