Python 将字符串转换为有序字典

Python 将字符串转换为有序字典,python,string,python-3.x,dictionary,Python,String,Python 3.x,Dictionary,将字符串转换为有序Python字典给定一个包含键和值字段的字符串。值用单引号括起来。 示例1: 输入字符串:“字段1:'abc',字段2:'b,c,d',字段3:'d,b,c'” 输出字典:{'Field1':'abc','Field2':'b,c,d','Field3':'d,b,c'} 例2: 输入字符串:“字段1:'abc',字段2:'HH:MM:SS',字段3:'d,b,c'” 输出字典:{'Field1':'abc','Field2':'HH:MM:SS','Field3':'d,b,

将字符串转换为有序Python字典给定一个包含键和值字段的字符串。值用单引号括起来。

示例1:
输入字符串:
“字段1:'abc',字段2:'b,c,d',字段3:'d,b,c'”

输出字典:
{'Field1':'abc','Field2':'b,c,d','Field3':'d,b,c'}

例2:
输入字符串:
“字段1:'abc',字段2:'HH:MM:SS',字段3:'d,b,c'”

输出字典:
{'Field1':'abc','Field2':'HH:MM:SS','Field3':'d,b,c'}


我尝试过按“,”和json加载拆分。但是,这两种情况我都面临着问题。“我不是在寻找代码,而是一种方法”

您可以尝试以下方法:

input_st = "Field1:'abc',Field2:'HH:MM:SS',Field3:'d,b,c'"

output_st = {item.split(":")[0]:":".join(item.split(":")[1:]).replace("'", "") for item in input_st.split("',")}
产出:

{'Field1': 'abc', 'Field2': 'HH:MM:SS', 'Field3': 'd,b,c'}

有点难看,但它确实起作用。

为什么会有这么多反对票?@MohamedALANI可能是因为堆栈溢出不是一种代码编写服务。对于这种情况(input_st=“Field1:'abc',Field2:'b:c,d',Field3:'d,b,c'),它不起作用。对不起,我应该在问题本身中发布这个。我现在已经更新了问题!我再次为我的错误道歉。@VenkataGogu我也更新了我的答案。它完成了任务:)@venkatagugu别担心!祝你好运