jens hat geschrieben:Oder noch anders gelöst: Nicht den OS Namen nehmen, sondern zu prüfen, ob "start", "xdg-open" oder "open" verfügbar ist?
Ginge natürlich auch. Wobei ich da ein bißchen Bauchschmerzen hinsichtlich potenzieller Namenskollisionen hätte. Also dass es zufällig ein Linux-Tool gibt, das `start` heißt, aber etwas ganz anderes tut, oder sowas. Da müsste man dann schon auf Verhalten testen, oder z.B. gucken, was von `--help` zurückgegeben wird. Klingt mir - wenn man es ordentlich machen will - etwas zu kompliziert für diese Aufgabe.
`os.name` dürfte auch relativ robust sein. Nähere Details will man ja meist gar nicht wissen und man hätte auch dort keine hässliche `.startswith()`-Verzweigung, sondern könnte beim Dict bleiben. Allerdings ist es halt nicht ganz so lesbar wie `platform.system()` und daher für mich persönlich nur an zweiter Stelle. Etwas irritierend ist, dass es zu `platform.system()` anscheinend keine ordenliche Doku gibt, wo alle möglichen Werte drinstehen.
/edit: Es gibt unter Linux tatsächlich das Kommando `start`.