def list_abc(self, **kwargs):
# check if 'name' in kwargs, etc
cmd = ABC()
cmd.id = kwargs['id']
cmd.name = kwargs['name']
cmd.keywords = kwargs['keywords']
return ABC(cmd) # not sure what ABC(ABC) does
...
some_instance.list_abc(name='name', id=1, keywords=['good', 'luck'])
# or, if have a dictionary containing name, id and keywords, you can pass it to the
# method as follows
data = {'name':'name', 'id':1, 'keywords':('a', 'b')}
some_instance.list_abc(**data)