我处于容易调整格式字符串但难以调整格式参数的情况:
'I can influence this'.format(foo={'a': 'no', 'b': 'control'},
bar=['no', 'control', 'either'])
对于数字,您可以使用{:1.23f}
进行格式化。
对于日期,您可以使用{:%Y-%m-%d}
进行格式化。
我想对迭代和字典有更多的控制。例如,我可以想象'{:iterable.42}'
将访问可迭代对象的第43个元素,而{:dict.b}
将使用键b
访问该元素。
是否存在类似的东西?
答案 0 :(得分:4)
在格式化字符串时,您可以访问以函数格式指定的关键字参数:
'{foo[a]} {bar[1]}'.format(foo={'a': 'no', 'b': 'control'},
bar=['no', 'control', 'either'])
在python中格式化字符串的有用来源: https://pyformat.info/