I spent some time to figure that out, so I post this Q&A.
Let's say you have function def my_func(group)
which takes an argument group which will be used as positional argument in next function: def set_permission(group_user=None, group_admin=None)
. So:
group = 'group_user'
my_func(group):
if group == 'group_user':
set_permission(group_user='write')
if group == 'group_admin':
set_permission(group_admin='write')
but what if group
can be 20 combinations?
And more 'real' case from Django:
from models import User, Project
import mommy
def create_instance_of_repetable_model(model, model_field):
if model == User:
mommy.make(User, user_perm='write')
if model == Project:
mommy.make(Project, project_perm='write')
if model == Project