我在list
中有一个python
,其示例数据如下所示:
list_str = ['1. Option 1', '2. Option 2 ', '3. Option 3', '4. Option 4']
现在我要做的是使用此list of dictionary
中的项目形成list
。输出list of dictionary
应如下所示:
[
{
"text": "1. Option 1",
"value": "1"
},
{
"text": "2. Option 2",
"value": "2"
},
{
"text": "3. Option 3",
"value": "3"
},
{
"text": "4. Option 4",
"value": "4"
}
]
现在我尝试将此作为构建list of dictionary
:
list_of_dict = dict((x,y) for x,y in enumerate(list_str,1))
产生此输出,这不是正确的输出,但我无法进一步修改它以获得所需的输出:
{1: '1. Option 1 ', 2: '2. Option 2 ', 3: '3. Option 3 ', 4: 'Option 4 '}
如何修改代码以获得正确的所需输出?
答案 0 :(得分:2)
您可以尝试:
dictionaries = []
for x, y in enumerate(list_str, 1):
dictionaries.append({'text': y,
'value': str(x)
})
或者将其作为一个班轮:
dictionaries = [{'text': y, 'value': str(x)} for x, y in enumerate(list_str, 1)]
答案 1 :(得分:0)
你可以这样试试,
In [11]: [{'value':str(x),'text':y} for x,y in enumerate(list_str,1)]
Out[11]:
[{'text': '1. Option 1', 'value': '1'},
{'text': '2. Option 2 ', 'value': '2'},
{'text': '3. Option 3', 'value': '3'},
{'text': '4. Option 4', 'value': '4'}]
列表理解将是解决方案,但您必须在每次迭代中指定键和值,然后才能正确分配。
答案 2 :(得分:0)
我会这样做(许多可能性之一):
Y = CJ(group_id1=d1$group_id1, group_id2=d_grouped$group_id2)