2017-04-07 5 views
0

Ich habe die Dokumentation für die Python-Datetime-Bibliothek untersucht, und ich bin durch die Anrufsignaturen verwirrt. Zum Beispiel datetime.timedelta kann auf folgende WeiseWie Python Anrufsignaturen mit verschachtelten Listen zu interpretieren

datetime.timedelta(10, 68400) 

jedoch seine Forderung Signatur wird als

datetime.timedelta([days[, seconds[, microseconds[, milliseconds[, minutes[, hours[, weeks]]]]]]]) 

Ich bin unsicher dokumentiert genannt werden, wie die verschachtelten Listen in dem Anruf Signatur zu interpretieren und wie sie beziehen sich auf die Möglichkeiten, wie Sie timedelta aufrufen können.

+2

Diese Argumente sind optional deshalb sind sie in Klammern. – Serenity

Antwort

0

Es gibt eine ähnliche Antwort hier, und ist im Grunde eine Kopie Ihrer Frage: What do square brackets, "[]", mean in function/class documentation?

Entweder können Sie die Optionen, um zum Beispiel geben: Timedelta (1, 2, 3) für 1 Tag, 2 Sekunden oder 3 Mikrosekunden, oder Sie spezifizieren durch die Argumente, die Sie interessieren: timedelta (Tage = 1, Mikrosekunden = 4) und das erlaubt Ihnen, sie in eine beliebige Reihenfolge zu bringen und/oder die Optionen wegzulassen, die Sie nicht brauchen.

Edit: OK, ich denke, das ist die Antwort: Why do Python function docs include the comma after the bracket for optional args?

+0

Die Implementierung wäre nur timedelta (* args, ** kwargs), ja? Aus Ihrer Antwort verstehe ich, wie man "timedelta" benutzt. Warum jedoch die Signatur mit verschachtelten Listen mit führenden Kommas bezeichnen? Ich verstehe die Bedeutung dieser Notation nicht. – xvtk

+0

Vereinbart mit Timedelta (* args, ** kwargs), leider zu dem Punkt Ihrer Frage, die mich auch stürzt. –

Verwandte Themen