Ich muss Dir dahingehend recht geben, als dass es möglich und aus meiner Sicht hilfreich wäre, um die Verständlichkeit zu maximieren. Vielleicht hätte ich besser seq statt s schreiben sollen. Nichtsdestotrotz sind Positionsargumente im Gegensatz zu Argumenten mit Vorgabewert nicht vertauschbar (außer wenn mit Schlüsselwortparametern angesprochen) und können daher nicht gleichgesetzt werden.lunar hat geschrieben:@Michael Schneider: Deiner Logik nach müsstest du konsequenterweise jedes Argument als Schlüsselwort übergeben. "splitter(s='Hallo Welt!')" liest sich aber eben doch bescheuert
Deshalb würde ich sie auch nicht gleichsetzen. Eben weil die Schlüsselwortparameter beim Funktionsaufruf vertauscht oder weggelassen werden können.lunar hat geschrieben:Schlüsselwortargumente stellen eigentlich eine Art optionale Argumente dar. "length" kann man schon als Schlüsselwort übergeben, weil die Signatur der Methode das eh vorsieht.
Pythoneers habe ich als die Leute verstanden, die von Python überzeugt sind und dessen Interessen offen vertreten - so wie es Pendants für Java und Perl gibt.lunar hat geschrieben:Daraus sollte man aber kein Dogma machen … wenn du meinst, "Pythoneers" (wer immer das sein soll) würden das tun, dann ist eine Quelle dafür ganz angebracht.
Wie oben beschrieben habe ich das zum Thema "Vorteile von Schlüsselwortparametern" gelesen. Wo genau kann ich jetzt nicht sagen, aber wenn ich wieder darauf stoße, werde ich es ergänzen.
Als Dogma würde ich das nun nicht bezeichnen. Ich würde eher sagen, dass man daraus keine allgemeine Pflicht machen darf. Man braucht nicht überall Schlüsselwortparameter verwenden, muss sich aber darüber im Klaren sein, dass der Quellcode definitiv an Klarheit verliert. Wenn nicht für einen selbst, dann für andere.
Wenn man sich aber freiwillig selbst den Grundsatz legt, zumindest nicht-Standardfunktionen mit Schlüsselwortparametern (soweit bekannt) aufzurufen, dann sehe ich darin zumindest keinen Nachteil. Welcher soll das sein? Gerade im Interesse guter Lesbarkeit und schneller, sicherer Einarbeitung in fremden Quellcode stehe ich voll dahinter.
Bitte was soll da schiefgehen? Im Gegenteil, das ist die einzige Möglichkeit um zu garantieren, dass existierende Skripte weiterhin ausgeführt werden können.lunar hat geschrieben:Zum Thema Umgebung: Wie lang soll das denn noch so gehen? Es ist doch eigentlich klar, dass sowas früher oder später schief gehen muss …
Gruß,
Michael