De methode format_map () is vergelijkbaar met str.format (** mapping) behalve dat str.format (** mapping) een nieuw woordenboek maakt, terwijl str.format_map (mapping) dat niet doet.
Voordat je erover praat format_map()
. Laten we eens kijken hoe het str.format(**mapping)
werkt voor Python-woordenboeken.
point = ('x':4,'y':-5) print('(x) (y)'.format(**point))
Uitvoer
4-5
Meer informatie over het opmaken van strings in Python?
Het format_map(mapping)
is vergelijkbaar met str.format(**mapping)
methode.
Het enige verschil is dat str.format(**mapping)
het dictaat wordt gekopieerd terwijl str.format_map(mapping)
er een nieuw woordenboek wordt gemaakt tijdens de methodeaanroep . Dit kan handig zijn als u met een dict
subklasse werkt.
De syntaxis van format_map()
is
str.format_map (mapping)
format_map Parameter
format_map()
heeft een enkel argument mapping(dictionary)
.
Retourwaarde van format_map ()
format_map()
formatteert de gegeven string en geeft deze terug.
Voorbeeld 1: hoe format_map () werkt?
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))
Uitvoer
4-5 4-5 0
Voorbeeld 2: Hoe format_map () werkt met dict-subklasse?
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')))
Uitvoer
(6, y) (x, 5) (6, 5)
format_map(mapping)
is flexibeler dan format(**mapping)
het ontbreken van sleutels.