gpt4 book ai didi

python - 从格式化输出生成 str.format 样式模板字符串的值

转载 作者:行者123 更新时间:2023-12-01 06:07:52 29 4
gpt4 key购买 nike

这似乎是一个奇怪的要求,但我正在寻找一个好的实现来做到这一点。

我有一个类似的字典

vals = dict(red='#F00', green='#0F0', blue='#00F')

和一个像

这样的字符串
tpl = '{red}:{green}:{blue}'

str.formatted输出

output = tpl.format(**vals)

到这里为止一切都很好。然而,我现在需要做相反的事情。我必须将像 '#F00:#0F0:#00F' 这样的字符串转换为我们之前开始使用的值的字典。当然,我可以splitstrip字符串并获取我需要的值,但如果tpl字符串应该,它就会失败改变。

关于如何做到这一点有什么好主意(如果可以的话)?

最佳答案

您可以使用正则表达式。 (也许你会遇到两个问题。)

>>> import re
>>> pattern = re.compile('(#[\da-fA-F]{3})')
>>> l = pattern.findall(output)
['#F00', '#0F0', '#00F']
>>> dict(zip(('red', 'green', 'blue'), l))
{'blue': '#00F', 'green': '#0F0', 'red': '#F00'}
>>>

关于python - 从格式化输出生成 str.format 样式模板字符串的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7240011/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com