如何按列表交替的键值对为字典对应键的取值追加元素?
如何根据交替键值列表更新字典的取值
嘿,这问题很好解决!你需要把列表里那种「键、值、键、值」交替出现的内容,对应追加到字典中已有键的字符串末尾对吧?我给你写个直观的实现方案:
首先先定义你的原始数据:
m_dict = {"Murder At Koh E Fiza" : "rot,r", "Subedar Joginder Singh" : "grn,4", "Blackmail" : "blau,9", "Rambo":"gelb,20"} m_list = ['Murder At Koh E Fiza','tt','Subedar Joginder Singh','yy','Blackmail','uu','Rambo','zz']
接下来是核心处理代码:
# 按步长2遍历列表,每次取一组键和要追加的值 for idx in range(0, len(m_list), 2): current_key = m_list[idx] value_to_add = m_list[idx + 1] # 先确认键存在于字典中,防止出现KeyError if current_key in m_dict: # 用逗号拼接原有值和新值,更新字典 m_dict[current_key] = f"{m_dict[current_key]},{value_to_add}"
运行这段代码后,打印m_dict就能得到你想要的结果:
print(m_dict) # 输出: # {"Murder At Koh E Fiza" : "rot,r,tt", "Subedar Joginder Singh" : "grn,4,yy", "Blackmail" : "blau,9,uu", "Rambo":"gelb,20,zz"}
简单解释下逻辑:
- 用
range(0, len(m_list), 2)来遍历列表的偶数索引位置,这样每次都能精准拿到列表里的「键」,而它的下一个元素(idx+1)就是要追加到字典对应键的值。 - 加个
if current_key in m_dict的判断很重要,要是列表里出现字典没有的键,程序也不会报错。 - 用Python的f-string来拼接字符串,简洁又直观,直接把新值用逗号追加到原有值的后面。
内容的提问来源于stack exchange,提问作者spider22
相关产品推荐
相关产品推荐

