Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 根据值将日期分组到列表中_Python_Dictionary_Group By - Fatal编程技术网

Python 根据值将日期分组到列表中

Python 根据值将日期分组到列表中,python,dictionary,group-by,Python,Dictionary,Group By,我有一个json对象,我正试图将该项组合在一起 sorted_stack = sorted(stack, key=itemgetter('Date')) for key, group in itertools.groupby(sorted_stack, key=lambda x:x['Date']): print(key) print(list(group)) 此代码返回按日期分组的值作为键,然后返回一个团队和日期列表,如下所示 2020-03-08

我有一个json对象,我正试图将该项组合在一起

sorted_stack = sorted(stack, key=itemgetter('Date'))
    for key, group in itertools.groupby(sorted_stack, key=lambda x:x['Date']):
        print(key)
        print(list(group))
此代码返回按日期分组的值作为键,然后返回一个团队和日期列表,如下所示

 2020-03-08
[{'Team': 'ORL', 'Date': '2020-03-08'}, {'Team': 'ORL', 'Date': '2020-03-08'}, {'Team': 'ORL', 'Date': '2020-03-08'}, {'Team': 'PHO', 'Date': '2020-03-08'}, {'Team': 'PHO', 'Date': '2020-03-08'}, {'Team': 'PHO', 'Date': '2020-03-08'}, {'Team': 'PHO', 'Date': '2020-03-08'}, {'Team': 'MIN', 'Date': '2020-03-08'}, {'Team': 'MIN', 'Date': '2020-03-08'}, {'Team': 'MIN', 'Date': '2020-03-08'}]
2020-03-08 : [{'Team': 'ORL', 'Date': ['2020-03-08', '2020-03-08', '2020-03-08']}, {'Team': 'PHO', 'Date': ['2020-03-08','2020-03-08', '2020-03-08', '2020-03-08']}, {'Team': 'MIN', 'Date': ['2020-03-08','2020-03-08', '2020-03-08']}
但是,我需要它像这样返回和键值对

 2020-03-08
[{'Team': 'ORL', 'Date': '2020-03-08'}, {'Team': 'ORL', 'Date': '2020-03-08'}, {'Team': 'ORL', 'Date': '2020-03-08'}, {'Team': 'PHO', 'Date': '2020-03-08'}, {'Team': 'PHO', 'Date': '2020-03-08'}, {'Team': 'PHO', 'Date': '2020-03-08'}, {'Team': 'PHO', 'Date': '2020-03-08'}, {'Team': 'MIN', 'Date': '2020-03-08'}, {'Team': 'MIN', 'Date': '2020-03-08'}, {'Team': 'MIN', 'Date': '2020-03-08'}]
2020-03-08 : [{'Team': 'ORL', 'Date': ['2020-03-08', '2020-03-08', '2020-03-08']}, {'Team': 'PHO', 'Date': ['2020-03-08','2020-03-08', '2020-03-08', '2020-03-08']}, {'Team': 'MIN', 'Date': ['2020-03-08','2020-03-08', '2020-03-08']}

如果特定团队的所有日期都作为键
Date

的值在列表中,这是一种使用
dict.setdefault

Ex:

for key, group in itertools.groupby(sorted_stack, key=lambda x:x['Date']):
    print(key)
    temp = {}
    for i in group:
        temp.setdefault(i['Team'], []).append(i['Date'])
    print(temp)
    #OR
    print([{"Team": k, "Date": v} for k, v in temp.items()])