String Python format_map ()

O método format_map () é semelhante a str.format (** mapping) exceto que str.format (** mapping) cria um novo dicionário, enquanto str.format_map (mapping) não.

Antes de falar format_map(). Vamos ver como str.format(**mapping)funciona para dicionários Python.

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

Resultado

 4 -5

Saiba mais sobre como formatar strings em Python?

O format_map(mapping)é semelhante ao str.format(**mapping)método.

A única diferença é que str.format(**mapping)copia o str.format_map(mapping)dicionário enquanto faz um novo dicionário durante a chamada do método. Isso pode ser útil se você estiver trabalhando com uma dictsubclasse.

A sintaxe de format_map()é

 str.format_map (mapeamento)

Parâmetro format_map

format_map()leva um único argumento mapping(dictionary).

Valor de retorno de format_map ()

format_map() formata a string fornecida e a retorna.

Exemplo 1: Como format_map () funciona?

 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))

Resultado

 4 -5 4 -5 0

Exemplo 2: Como format_map () funciona com a subclasse 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')))

Resultado

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

format_map(mapping)é mais flexível do format(**mapping)que você pode ter chaves ausentes.

Artigos interessantes...