首页 > 解决方案 > 如何在python中将两个括号内的值组合成一个字符串内的一个?

问题描述

我有一个字符串,我想转换

  '{"Name":"Tom", "Age:20}, {"Name":"Tina", "Age:19}' into one 
  '{"Name":"Tom","Age":20,"Name":"Tina"Age:19}'

我尝试用空格替换括号,然后在字符串的开头和结尾再次添加它。我如何在单行中做到这一点?请帮忙。

标签: python

解决方案


您可以使用“str.partition”,但这假设您知道确切的分隔符并且您只有两个部分要加入:

>>> part1, sep, part2 = '{"Name":"Tom", "Age:20}, {"Name":"Tina", "Age:19}'.partition('}, {')
>>> ', '.join([part1, part2])
'{"Name":"Tom", "Age:20, "Name":"Tina", "Age:19}'

对于多个部分,请使用str.split

>>> s = '{"Name":"Tom", "Age":20}, {"Name":"Tina", "Age":19}, {"Name":"John", "Age":19}'
', '.join(s.split('}, {'))
Out[29]: '{"Name":"Tom", "Age":20, "Name":"Tina", "Age":19, "Name":"John", "Age":19}'
>>> ', '.join(s.split('}, {'))

或者简单地说str.replace

>>> '{"Name":"Tom", "Age:20}, {"Name":"Tina", "Age:19}'.replace('}, {', ', ')
'{"Name":"Tom", "Age:20, "Name":"Tina", "Age:19}'

推荐阅读