在python中,如何将两个括号内的值合并为字符串内的值?
我有一个字符串,我想转换在python中,如何将两个括号内的值合并为字符串内的值?,python,Python,我有一个字符串,我想转换 '{"Name":"Tom", "Age:20}, {"Name":"Tina", "Age:19}' into one '{"Name":"Tom","Age":20,"Name":"Tina"Age:19}' 我尝试用空格替换括号,然后在字符串的开头和结尾再
'{"Name":"Tom", "Age:20}, {"Name":"Tina", "Age:19}' into one
'{"Name":"Tom","Age":20,"Name":"Tina"Age:19}'
我尝试用空格替换括号,然后在字符串的开头和结尾再次添加它。
我如何在单行中完成它?请帮忙。您可以使用'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}'
先解析它,然后使用
{**dict1,**dict2}
不要使用字符串。@Countour Integraldict
s不能有重复的键您最初是如何使用该字符串的?@Countour Integral不管您使用什么,您不能有两个'Age'
键。当然,除非您谈论的是嵌套的dict。如果希望最终输出为字符串,请使用此选项:x='{'+x.replace('{',“”)。replace('}',“)+'}'
replace
和分区
如果存在},将导致问题,{
内引号。@Countour Integral,没有…json解析器就无法解析json