title: API of a package in python. In __init__.py?
body: <p>I have written a python package which consists of several <code>.py</code> files which contain classes and so on. I want to expose it to client using "Facade" pattern. So I don't want clients to learn all internal classes but only methods exposed by this API interface.</p>
  
  <p>Question is: where do I put this api ? Do I define a file <code>api.py</code> inside the package or can I put this api in the <code>__init__.py</code> of the package?</p>
  
  <p>I explain better with an example</p>
  
  <pre><code>&lt;my_module&gt;\
       __init__.py
       core.py
       submodule1.py
       submodule2.py
       util.py
       ........
  </code></pre>
  
  <p>so where do I put the public API of  ?</p>