tdl Was die Funktion macht habe ich schon verstanden. Nur sollte sie das halt nicht alles machen und teilweise halt auch nicht so wie sie das macht. Ja es gibt Fragen das kann man trefflich streiten wie man es nun genau löst, und Du fragst 10 Programmierer und bekommst 20 verschiedene Antworten. Aber das eine Funktion *eine* in sich geschlossene Sache macht und so geschrieben sein sollte, dass sie eine sinnvolle Schnittstelle hat was Argumente und Rückgabewerte betrifft, und dass sie leicht testbar sein sollte, ist keine Geschmacksfrage. Das mit dieser Funktion definitiv was nicht stimmt, sieht man wie eingangs erwähnt schon am Namen, weil man da Probleme hat einen guten Namen zu finden der beschreibt was die Funktion tut, ohne das man da einen ganzen Roman als Namen hat.
Das mit dem ``x in range(a, b)`` wird ziemlich sicher jeder in ``a <= x < b`` ändern. Und wirklich *niemand* würde aus ``a <= x < b`` ein ``x in range(a, b)`` machen. Auch das ist keine Geschmacksfrage. Die Änderung ist a) klein, aber b) ist der Unterschied ob man maximal vier oder maximal 60 Vergleiche macht ziemlich deutlich. Es gibt keinen Grund das nicht in die Form zu bringen die 99,99% aller Python-Programmierer wählen würden (also wenn es da nicht `datetime.time` gäbe), ausser dass man mit dem Fuss aufstampfen und es unbedingt anders machen will als den offensichtlichen Weg zu nehmen. Wie gesagt, gerade bei Python käme so etwas nicht ohne Anmerkung durch einen Code Review. Wenn Du so was machen willst ist Python vielleicht die falsche Sprache, zumindest wenn Du andere Python-Programmierer was fragst, weil solche Sachen werden Dir erfahrungsgemäss immer wieder gesagt, bis keiner mehr Lust hat auf die Fragen zu antworten wenn Du gar nichts lernen willst.
`Path`-Objekte haben eine `write_text()`-Methode (ungetestet):