如何从多个具有相同值的字典中获取所有值到列表python中

艾哈迈德·阿里

我想列出如下清单

data2 = ['Run, Read', 'Sing, Read', 'Run, Sing, Read', 'Read']

从这个清单

data = [
{29: 'Run'}, 
{29: 'Read'}, 
{30: 'Sing'}, 
{30: 'Read'}, 
{31: 'Run'}, 
{31: 'Sing'}, 
{31: 'Read'}, 
{32: 'Read'}]

谁能帮我

1313e

人们,请正确阅读问题。OP正在询问如何使用相同的键将不同字典的字符串收集到单个字符串中。

我有点想知道您将如何获得像这样的词典列表,而不是类似的列表

data = [
{29: 'Run', 30: 'Sing', 31: 'Read', 32: 'Read'}, 
{29: 'Read', 30: 'Read', 31: 'Run'},
{31: 'Sing')] 

基本上是一样的,但是那不是重点。

您可以通过以下操作轻松完成所需的操作:

data = [
{29: 'Run'}, 
{29: 'Read'}, 
{30: 'Sing'}, 
{30: 'Read'}, 
{31: 'Run'}, 
{31: 'Sing'}, 
{31: 'Read'}, 
{32: 'Read'}]

# Create empty dict for all keys
key_dct = {}

# Loop over all dicts in the list
for dct in data:
    # Loop over every item in this dict
    for key, value in dct.items():
        # Add value to the dict with this key
        key_dct.setdefault(key, []).append(value)

# Combine all items in key_dct into strings
data2 = [', '.join(value) for value in key_dct.values()]

# Print data2
print(data2)

输出: ['Run, Read', 'Sing, Read', 'Run, Sing, Read', 'Read']

请注意,即使某些字典包含多个项目,我的解决方案仍然有效。

编辑:如果要确定字符串的顺序也按键的数字顺序,则将data2上面代码段中的创建替换为

# Sort items on their key values
items = list(key_dct.items())
items.sort(key=lambda x: x[0])

# Combine all items into strings
data2 = [', '.join(value) for _, value in items]

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何获取不同字典中相同键的所有值,并且字典存储在列表中

Python:具有一个键和多个值的字典:如何获取具有相同SET值的键列表?

如何对列表中具有相同键的字典值求和?

在字典中查找具有相同值的嵌套列表 [Python]

获取所有在python中具有相同值的行?

如何从列表字典的值中获取所有键?

如何从具有相同值的两列表中获取记录?

如何将具有多个文本列表值的python字典拆分为具有相同值的键的单独字典?

如何使用python和bottle框架从具有相同值的嵌套字典中获取元素?

Python-如何在字典中获取具有相同值的键/

如何在python字典中的键具有多个值?

如何在Python中编写具有多个键的字典,每个键具有多个值到csv?

从字典列表到具有相同值的字典列表

获取字典列表中具有键/值的字典

在字典中按值获取键,在python中具有相同的值?

获取所有在熊猫中具有相同值的行

在Python字典中查找具有相同值的所有键

使用python返回字典中具有相同对应值的所有键

如果我有多个具有相同值的行,如何从mysql结果中获取单个值

如何从列表中获取所有值?

python字典作为参数,在字典中具有多个值

如何将列表值附加到具有相同长度的字典列表中?

列表中具有单键多个值的字典

检索列表中的所有对象在python中的属性是否具有相同的值

将具有相同键的字典添加到列表中,而不会覆盖Python中的值

在字典中为一个键添加具有多个值的列表或字典-Python

如何从字典中的列表中获取所有值,我需要为每个项目获取标题

如何从Python字典中的相同值获取多个键

从具有列表值的字典中获取特定键值