Warum hat Python sowohl eine Formatierungsfunktion als auch eine Formatierungsmethode?

Dasformat Die Funktion in Builtins scheint wie eine Teilmenge der zu seinstr.format Methode, die speziell für den Fall der Formatierung eines einzelnen Objekts verwendet wird.

z.B.

>>> format(13, 'x')
'd'

wird anscheinend vorgezogen

>>> '{0:x}'.format(13)
'd'

und IMO sieht es schöner aus, aber warum nicht einfach verwendenstr.format In jedem Fall, um die Dinge einfacher zu machen? Beide wurden in vorgestellt2.6 Es muss also einen guten Grund geben, beides gleichzeitig zu haben. Was ist das?

Bearbeiten: Ich habe nachgefragtstr.format undformatnicht, warum wir keine haben(13).format

Antworten auf die Frage(2)

Ihre Antwort auf die Frage