No, there is nothing wrong with that. If you have N different arguments (things that control the execution of your function), you should somehow pass them - how you actually do this, just user preferences, if you ask me.
However ... if you find yourself doing something like this:
func('somestring', a=A, b=B, c=C) func('something else', a=A, b=B) func('something third', a=A, c=C, d=D)
etc .. where A, B, C are really configurations for many different things, then you should start learning the class. A class does a lot of things, but it also creates a context. Instead, you can do something like:
cf = myclass(a=A, b=B, c=C, d=D) cf.func('somestring') cf.func('something else') cf.func('something third')
and etc.
source share