title: How to have different input types for the same function?
body: <p>The basic idea of what I want to do is:</p>
  
  <pre><code>def aFuncion(string = '', dicti = {}):
      if len(str) &gt; 0:
           print 'you gave string as input'
      if len(dicti) &gt; 0:
           print 'you gave a dict as input'
  
  aFunction(string = 'test')
  dict['test'] = test
  aFunction(dicti = dict)
  </code></pre>
  
  <p>I know this kind of idea is possible in more OO type of languages, but is this also possible in python?</p>
  
  <p>Right now I'm doing </p>
  
  <pre><code>def aFuncion(input):
      if type(input) == str:
           print 'you gave string as input'
      if type(input) == dict:
           print 'you gave a dict as input'
  
  aFunction('test')
  </code></pre>
  
  <p>But I want the difference to be clear when the function is called</p>