title: Python populating input arguments for a function with *args
body: <p>If I have a function which supports variable argument number, i.e. uses *args, how can I populate the arguments from a loop/list comprehension? Say the function expects multiple lists as arguments and I have a table/dataframe and want to use each column as an input argument, why does this not work?</p>
  
  <p><code>funName([df[iCol].values for iCol in df.columns])</code></p>
  
  <p>Say my dataframe has 5 columns, I would be required to call the function like so:</p>
  
  <p><code>funName(col1, col2, col3, col4, col5)</code></p>
  
  <p>But I do not want to manually create variables for each column but rather populate the argument list dynamically. Thanks.</p>