给出代码:
test_dict = {'aaa' : [1, 2], 'bbb' : [4, 5], 'ccc' : [7, 8]}
lis = [11, 22, 44, 55, 77, 88]
尝试迭代更新
test_dict
成为:
test_dict = {'aaa' : [11, 22], 'bbb' : [44, 55], 'ccc' : [77, 88]}
所以我找到的最接近的解决方案是: https://www.geeksforgeeks.org/python-iterate-through-value-lists-dictionary/ (方法#1) 但不确定在哪里分解“res”变量的右侧以更新“test_dict”
感谢您的帮助。
Python 3.12 引入了一个函数,可以让您组合相邻的列表条目。将其与
zip
函数和字典理解相结合,可以为您提供一种优雅的方式来完成您所描述的事情。
from itertools import batched
batched_lis = [list(sublist) for sublist in batched(lis, 2)]
test_dict = {key: value for key, value in zip(sorted(test_dict), batched_lis)}