title: Why do languages like Java use hierarchical package names, while Python does not?
body: <p>I haven't done enterprise work in Java, but I often see the <a href="https://stackoverflow.com/questions/420945/java-package-name-convention-failure">reverse-domain-name package naming convention</a>. For example, for a Stack Overflow Java package you'd put your code underneath package <code>com.stackoverflow</code>.</p>
  
  <p>I just ran across a Python package that uses the Java-like convention, and I wasn't sure what the arguments for and against it are, or whether they apply to Python in the same way as Java. What are the reasons you'd prefer one over the other? <strong>Do those reasons apply across the languages?</strong></p>