title: Python docstring search - similar to MATLAB `lookup` or Linux `apropos`
body: <p>Is there a way to perform keyword searching of module and function docstrings <em>from the interpreter?</em></p>
  
  <p>Often, when I want to do something in Python, I know there's a module that does what I want, but I don't know what it's called. I would like a way of searching for <em>"the name of the function or module that does X"</em> without having to Google <em>"python do X"</em>.</p>
  
  <p>Take the example of "how can I open an URL"? At a Linux shell, I might try <code>&gt;&gt; apropos open url</code>. Under MATLAB, I might try <code>&gt;&gt; lookup open url</code>. Both of these would give me listings of functions or modules that include the words 'open' and 'URL' somewhere in their man page or doc string. For example:</p>
  
  <pre><code>urllib.urlopen   : Create a file-like object for the specified URL to read from.
  urllib2.urlopen  : ...
  ...
  </code></pre>
  
  <p>I'd like something that searches through all installed modules, not just the modules that have been <code>import</code>ed into my current session.</p>
  
  <p><em>Yes, Google is a great way to search Python doc strings, but the latency is a bit high. ;)</em></p>