Python String format_map ()

Die format_map () -Methode ähnelt str.format (** Mapping), außer dass str.format (** Mapping) ein neues Wörterbuch erstellt, während str.format_map (Mapping) dies nicht tut.

Bevor ich darüber rede format_map(). Mal sehen, wie es str.format(**mapping)für Python-Wörterbücher funktioniert.

 point = ('x':4,'y':-5) print('(x) (y)'.format(**point))

Ausgabe

 4 -5

Weitere Informationen zum Formatieren von Zeichenfolgen in Python

Das format_map(mapping)ist ähnlich wie bei der str.format(**mapping)Methode.

Der einzige Unterschied besteht darin, dass str.format(**mapping)das Diktat kopiert wird, während str.format_map(mapping)beim Methodenaufruf ein neues Wörterbuch erstellt wird. Dies kann nützlich sein, wenn Sie mit einer dictUnterklasse arbeiten.

Die Syntax von format_map()ist

 str.format_map (Zuordnung)

format_map Parameter

format_map()nimmt ein einziges Argument mapping(dictionary).

Rückgabewert von format_map ()

format_map() formatiert die angegebene Zeichenfolge und gibt sie zurück.

Beispiel 1: Wie funktioniert format_map ()?

 point = ('x':4,'y':-5) print('(x) (y)'.format_map(point)) point = ('x':4,'y':-5, 'z': 0) print('(x) (y) (z)'.format_map(point))

Ausgabe

 4 -5 4 -5 0

Beispiel 2: Wie funktioniert format_map () mit der Unterklasse dict?

 class Coordinate(dict): def __missing__(self, key): return key print('((x), (y))'.format_map(Coordinate(x='6'))) print('((x), (y))'.format_map(Coordinate(y='5'))) print('((x), (y))'.format_map(Coordinate(x='6', y='5')))

Ausgabe

 (6, y) (x, 5) (6, 5)

format_map(mapping)ist flexibler als format(**mapping)da Sie fehlende Schlüssel haben können.

Interessante Beiträge...