我需要创建一个字典,它的键是以前创建的字典中的值。我以前的字典是:
{100000: (400, 'Does not want to build a %SnowMan %StopAsking', ['SnowMan', 'StopAsking'], [100, 200, 300], [400, 500]),
100001: (200, 'Make the ocean great again.', [''], [], [400]),
100002: (500, "Help I'm being held captive by a beast! %OhNoes", ['OhNoes'], [400], [100, 200, 300]),
100003: (500, "Actually nm. This isn't so bad lolz :P %StockholmeSyndrome", ['StockholmeSyndrome'], [400, 100], []),
100004: (300, 'If some random dude offers to %ShowYouTheWorld do yourself a favour and %JustSayNo.', ['ShowYouTheWorld', 'JustSayNo'], [500, 200], [400]),
100005: (400, 'LOLZ BELLE. %StockholmeSyndrome %SnowMan', ['StockholmeSyndrome', 'SnowMan'], [], [200, 300, 100, 500])}
这本词典的形式是{key:(id,string,tags,likes,dislikes)} 我需要创建一个字典,它的键是第一个字典中的标记,值是id和包含标记的字符串,以字典的形式呈现。你知道吗
例如,如果我们使用标记'SnowMan'
,新字典应该如下所示:
{'SnowMan': {400: ['Does not want to build a %SnowMan %StopAsking', 'LOLZ BELLE. %StockholmeSyndrome %SnowMan']}}
或者,如果我们使用标签'StockholmeSyndrome'
,新字典应该如下所示:
{'StockholmeSyndrome': {
500: ["Actually nm. This isn't so bad lolz :P %StockholmeSyndrome"],
400: ['LOLZ BELLE. %StockholmeSyndrome %SnowMan']}}
最后,新字典需要将上一个字典中的所有标记都包含为键,包括没有标记的事件。你知道吗
我真的被困在这个问题上了,有人能给我一些指导吗?你知道吗
使用^{} 可以迭代并附加到嵌套字典结构中的列表:
defaultdict
是dict
的一个子类,因此通常不需要进一步的操作。但是,如果需要常规的dict
对象,可以使用递归函数:这个怎么样?你知道吗
在审查了你的要求后,我用下面的代码更新了我以前的帖子。我相信这就是你想要达到的目标。唯一需要的导入是来自collections模块的OrderedDict。你知道吗
输出:
相关问题 更多 >
编程相关推荐