将不同长度的值从一个字典附加到另一个字典



我有一个字典,里面有不同长度的列表值。我需要在新字典中获取与同一关键字相关联的同一位置的值。

原始词典{A:[1,2],B:[3,4,5]}

新字典:{A:[1,3],B:[2,4],C:[5]}

我尝试了一个for循环,并将我的值包装在zip_angest中,但仍然得到一个列表索引超出范围的错误。

for x in range(1, max([len(v) for v in sub_folder_notebooks.values()])):
notebook_step[x] = zip_longest([elem[x] for elem in sub_folder_notebooks.values()])

当循环遍历dictsub_folder_notebooks的值时,我会添加一个条件,以确保您可以访问elem[x]。不是最好的方法,但应该做到这一点:

for x in range(0, max([len(v) for v in sub_folder_notebooks.values()])):
notebook_step[x] = zip_longest([elem[x] for elem in sub_folder_notebooks.values() if len(elem)>x])

我从x=0开始,因为你也想有第一个元素。

相关内容

  • 没有找到相关文章

最新更新