当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python String format_map()用法及代码示例


format_map() 方法类似于 str.format(**mapping) 除了 str.format(**mapping) 创建一个新字典而 str.format_map(mapping) 没有。

在谈论 format_map() 之前。让我们看看 str.format(**mapping) 如何为 Python Dictionaries 工作。

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

输出

4 -5

了解更多信息,how to format strings in Python?

format_map(mapping) 类似于str.format(**mapping) 方法。

唯一的区别是 str.format(**mapping) 复制了 dictstr.format_map(mapping) 在方法调用期间创建了一个新字典。如果您使用dict 子类,这可能很有用。

format_map() 的语法是

str.format_map(mapping)

format_map参数

format_map() 采用单个参数 mapping(dictionary)

返回:

format_map() 格式化给定的字符串并返回它。

示例 1: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))

输出

4 -5
4 -5 0

示例 2:format_map() 如何与 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')))

输出

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

format_map(mapping)format(**mapping) 更灵活,因为您可能缺少键。

相关用法


注:本文由纯净天空筛选整理自 Python String format_map()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。