如何从python中的字符串中检索关键字参数?

vpo*_*ain 2 python string format parsing

比方说,我有一个字符串:

  > my_string = '{foo}/{bar}'
  > my_string.format(foo='foo', bar='bar')
  'foo/bar'
Run Code Online (Sandbox Code Playgroud)

对,很酷.但在我的情况下,我想检索哪些是关键字参数my_string.我已经做好了:

 > ATTRS_PATTERN = re.compile(r'{(?P<variable>[_a-z][_a-z0-9]*)}')
 > ATTRS_PATTERN.findall(my_string)
 ['foo', 'bar']
Run Code Online (Sandbox Code Playgroud)

它不是很性感.你有更好的主意吗?

Chr*_*rke 6

为什么重新发明轮子?string.Formatterparse()函数.

>>> import string
>>> [a[1] for a in string.Formatter().parse('{foo}/{bar}')]
['foo', 'bar']
Run Code Online (Sandbox Code Playgroud)