如何使用python将这个字符串拆分为dict?

2024-09-30 20:25:19 发布

您现在位置:Python中文网/ 问答频道 /正文

字符串

string1 = '"{ABCD-1234-3E3F},MEANING1","{ABCD-1B34-3X5F},MEANING2","{XLMN-2345-KFDE},WHITE"'

预期结果

^{pr2}$

也许这是个简单的问题,
有没有什么简单的方法可以把string1分割成{}?在


Tags: 方法字符串whiteabcdstring1pr2meaning1meaning2
3条回答

还有另一种选择:

>>> string1 = '"{ABCD-1234-3E3F},MEANING1","{ABCD-1B34-3X5F},MEANING2","{XLMN-2345-KFDE},WHITE"'
>>> dict((nm, v) for nm,v in [pair.split(',') for pair in eval(string1)])
>>> {'{ABCD-1234-3E3F}': 'MEANING1', '{ABCD-1B34-3X5F}': 'MEANING2', '{XLMN-2345-KFDE}': 'WHITE'}

如果您正在寻找一个单一的班轮,这将是有效的:

>>> dict(tuple(x.split(',')) for x in string1[1:-1].split('","'))
{'{ABCD-1B34-3X5F}': 'MEANING2', '{XLMN-2345-KFDE}': 'WHITE', '{ABCD-1234-3E3F}': 'MEANING1'}
string1 = '"{ABCD-1234-3E3F},MEANING1","{ABCD-1B34-3X5F},MEANING2","{XLMN-2345-KFDE},WHITE"'
elements = string1.replace('"','').split(',')
dict(zip(elements[::2],elements[1::2]))

可以首先拆分原始字符串并从中提取元素。现在您可以将元素在奇数和偶数位置配对,并将它们转换为dict

相关问题 更多 >