Vielleicht hilft Dir eine "test-driven" Mentalität: Ein erfolgreicher Compilerlauf ist auch nur das bestehen
eines test cases. Bei dynamischen Sprachen wie python muss (sollte) man diesen halt durch
entsprechende Tests ersetzen. Andersrum gesagt: ein statisches Typsystem garantiert Dir auch keine
Abwesenheit von runtime errors.
Exceptions werden in python traditionell sehr liberal verwendet, wenn Dir das nicht schmeckt, ist python
evtl nichts für Dich.
private: lass den Kram, den Du private halten willst, mit 2 underscores beginnen
(self.__so_zum_beispiel), dann kann man von außen nur mit Trix ran.
Interfaces: gibts library-ansätze zu, hab ich jetzt aber auch keine im Kopf.
Was OOP angeht: die Frage "what is an object?" ist gar keine so einfache
Ich finde python genügend OO-ish, vor allem die Metaprogrammierung ist inzwischen recht flauschig.
(Wenn man allerdings abgefahrene Dinge mit dem import system in Kombination mit metaclasses
anstellen will, machts irgendwann dann doch keinen Spaß mehr. Aber das nur am Rande)
summa summarum scheint python Deinen Geschmack nicht so ganz zu treffen, evtl findest Du ja mehr
Freude an C# oder Scala...
I am now surrounded by hypocrites, liars, drunks, clowns, fools, sycophants and the desparate.