title: Optional but conditional argument python
body: <p>So let's say I have a function which takes two params, but at least one of them should be present:</p>
  
  <pre><code> def foo_bar(foo = None, bar = None):
  </code></pre>
  
  <p>The problem is that both of them are optional, but in practice either <code>foo</code> or <code>bar</code> will be passed in.
  Right now I check for existence in the function like this:</p>
  
  <pre><code>do_this() if foo else do_that() sort of logic.. 
  </code></pre>
  
  <p>But I don't like the way this looks.</p>
  
  <p>What's the best way to deal with this?</p>