@pixewakb,
Der Ordner mit dem Namen "Module" ist eigentlich aufgrund der darin enthaltenen '__init__.py' ein Paket und kein Modul. Die darin enthaltenen .py Dateien sind die Module.
core.py und notify.py sind also Module im Paket 'module'.
Wenn du jetzt in core.py Namen aus notify.py importieren möchtest, geht das in core.py mit Punkt for dem notify so:
Das kommt also *nicht* in die __init__.py sondern in core.py
main.py ist nicht Teil des Pakets. Main verwendet (importiert) das Paket oder Namen daraus.
Das kann man so machen wie du es versucht hast. Aber komfortabler wäre es in main.py einen solchen Import zu ermöglichen:
Dazu muss die __init__.py diese Zeile enthalten:
Diese Vorgehensweise ist mein persönlicher Favorit, es gibt aber grundsätzlich mehrere Ansätze, so etwas aufzubauen.
Bzgl. der settings.ini kann ich __blackjack__ nur zustimmen. Alles was das Paket braucht gehört auch dort hinein. Allein schon für das Package-Management sollte alles kompakt gehalten werden.
Dass die Applikation dann später nach der Installation die settings.ini anderswo im Dateisystem ablegt ist natürlich auch möglich, hat aber nichts mit der Ausgangsstruktur des Pakets zu tun.