向字符串格式键字段添加其他字符

2024-09-30 18:24:39 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试创建一个基本键/值表,如下所示:

someKey:               some info
aReallyLongKey:        more info
somthingElse:          other info

没有冒号,这真的很容易:

formatter = "{key:<25}{value}"

for k,v in myDict.items():
    print(formatter.format(key=k, value=v))

但是,这将不包括键后的“:”。我想要的是这样的东西(这不起作用):

formatter = "{key+':':<25}{value}"

本质上,我想在密钥中添加一些内容,以便获得: formatter.format(key=k+":", value=v),但在formatter字符串中附加“:”

我试过做一些筑巢,但没能成功。是否有一种优雅的、本机的、python式的方式将“:”附加到字符串格式化程序中的键,以便我仍然可以在整个“键:”部分上使用<25格式


Tags: key字符串ininfoformatforvalueformatter
1条回答
网友
1楼 · 发布于 2024-09-30 18:24:39

如果您使用的是python 3.6+,那么可以使用f-strings轻松完成这项工作:

for k,v in myDict.items():
    print(f"{f'{k}:':<25}{v}")
    #or
    print(f"{k + ':':<25}{v}")

否则,只需在格式化之前附加冒号(就像您要求的那样):

formatter = "{key:<25}{value}".format
for k,v in myDict.items():
    print(formatter(key=k+':', value=v))

相关问题 更多 >