Pass elements of a list as arguments to a function in python
Posted
by Wilduck
on Stack Overflow
See other posts from Stack Overflow
or by Wilduck
Published on 2010-05-03T04:30:27Z
Indexed on
2010/05/03
4:38 UTC
Read the original article
Hit count: 389
I'm building a simple interpreter in python and I'm having trouble handling differing numbers of arguments to my functions. My current method is to get a list of the commands/arguments as follows.
args = str(raw_input('>> ')).split()
com = args.pop(0)
Then to execute com, I check to see if it is in my dictionary of command-> code mappings and if it is I call the function I have stored there. For a command with no arguments, this would look like:
commands[com]()
However, if a command had multiple arguments, I would want this:
commands[com](args[0],args[1])
Is there some trick where I could pass some (or all) of the elements of my arg list to the function that I'm trying to call? Or is there a better way of implementing this without having to use python's cmd class?
© Stack Overflow or respective owner