Python String format_map ()

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 dictsubklasse 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.

Interessante artikelen...