Ciąg znaków w języku Python format_map ()

Metoda format_map () jest podobna do str.format (** mapowanie) z tym wyjątkiem, że str.format (** mapowanie) tworzy nowy słownik, podczas gdy str.format_map (mapowanie) nie.

Zanim o tym porozmawiamy format_map(). Zobaczmy, jak str.format(**mapping)działa słownik Pythona.

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

Wynik

 4 -5

Dowiedz się więcej o tym, jak formatować ciągi znaków w Pythonie?

format_map(mapping)Jest podobny do str.format(**mapping)sposobu.

Jedyną różnicą jest to, że str.format(**mapping)kopiuje dict, podczas gdy str.format_map(mapping)tworzy nowy słownik podczas wywołania metody. Może to być przydatne, jeśli pracujesz z dictpodklasą.

Składnia format_map()is

 str.format_map (mapowanie)

parametr format_map

format_map()przyjmuje pojedynczy argument mapping(dictionary).

Wartość zwracana z format_map ()

format_map() formatuje podany ciąg i zwraca go.

Przykład 1: Jak działa 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))

Wynik

 4-5 4-5 0

Przykład 2: Jak format_map () działa z podklasą 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')))

Wynik

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

format_map(mapping)jest bardziej elastyczny niż format(**mapping)w przypadku braku kluczy.

Interesujące artykuły...