Python中format_map与format字符串格式化的区别

在Python3中使用format和format_map方法都可以进行字符串格式化,但format是一种所有情况都能使用的格式化方法,format_map仅使用于字符串格式中可变数据参数来源于字典等映射关系数据时才可以使用。
format_map的参数不需传入“关键字=真实值”,而是直接传入真实的字典值。我们来看个案例:

有个字典:student={'name':'小明','class':'20190301','score':597.5}

使用format输出相关信息:
s1='{st[class]}班{st[name]}总分:{st[score]}'.format(st=student)

改用format_map方法后代码如下:
student={'name':'小明','class':'20190301','score':597.5}
s1='{class}班{name}总分:{score}'.format_map(student)

执行结果都是:'20190301班小明总分:597.5'

具体关于format和format_map字符串格式化方法请参考:《 Python强大的字符串格式化新功能:使用format字符串格式化》

原文地址:https://www.cnblogs.com/LaoYuanPython/p/11104845.html