我有一个字符串需要分成 3 种方式,然后放入字典列表中。
given_string = 'name:mickey,age:58|name:minnie,age:47,weight:60'
data = []
data = [value.split(',') for value in given_string.split('|')]
data = [['name:mickey', 'age:58'], ['name:minnie', 'age:47', 'weight:60']]
现在我想在“:”上再拆分一次,让数据包含两个字典的列表,这样当我输入 data[1][age] 时,我得到 47。
基本上,我想我希望它能正常工作:
data = [{'name': 'mickey', 'age': '58}, {'name': 'minnie', 'age': '47', 'weight': '60'}]
我相信最终,数据应该是一个字典列表,但是一旦我将字符串拆分为两个列表,我就会在“:”上拆分它然后将子列表转换为字典时感到困惑。
请您参考如下方法:
你可以用一个简单的列表理解来做
>>> [dict(x.split(':') for x in parts.split(','))
for parts in given_string.split('|')]
[{'age': '58', 'name': 'mickey'}, {'age': '47', 'name': 'minnie', 'weight': '60'}]
