I have been a PHP developer for the last decade, but figured it might be a wise move to learn another language. Like Python.
Python in and off itself isn't so hard to understand when you've got a background in programming.
What I can't yet understand though is how to structure my application and how to layout my classes. In PHP the convention is to do something like this: Vendor\Module\SubModule\Class, which has a direct mapping to a directory and file on the file system, Class.php being the file where the Class is defined.
The closest thing I have gotten in Python is this: Module.Class, where Module.py is the file where Class is defined. So with this structure, all classes belonging to this module should be defined in Module.py.
I don't want to emulate the PHP way of doing things, I just provided it for context.
So the question really is: What is the pythonic way of structuring an application?
Edit
Alright, maybe the question is too broad. To learn python I am converting some php scripts to Python. I have a script that imports files with cluster information into a database. My php structure looks like this:
.
`-- Company
    |-- Cluster
    |   |-- Cluster.php
    |   |-- Import
    |   |   |-- Array.php
    |   |   `-- Csv.php
    |   |-- Import.php
    |   |-- Map.php
    |   `-- Sync.php
So I have an Import interface Company\Cluster\Import.php which is implemented by two scripts: Company\Cluster\Import\Array.php and \Csv.php
Further I have some classes that take care of handling and preparing the incoming data to send off to the DAO.
How might I structure this application in Python?
