title: Pass tuple to function that takes *args and **kwargs
body: <p>I have two functions:</p>
  
  <pre><code>def foo(*args, **kwargs):
      pass
  
  def foo2():
      return list(), dict()
  </code></pre>
  
  <p>I want to be able to pass the list and dict from foo2 as args and kwargs in foo, however when I use it like</p>
  
  <pre><code>foo(foo2())
  </code></pre>
  
  <p>or</p>
  
  <pre><code>foo(*foo2())
  </code></pre>
  
  <p>tuple returned by foo2 gets assigned to *args.
  How should I do it properly?</p>