You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为字典各值列表中的每个元素添加前缀'd'?

为字典中列表的每个元素添加前缀

原字典:

original_dict = {
    'q1': [5, 6, 90, 91, 119, 144, 181, 399],
    'q2': [236, 166],
    'q3': [552, 401, 1297, 1296],
}

需要实现的目标:为每个值列表中的每个元素添加前缀'd',得到如下结果:

{
    'q1': ['d5', 'd6', 'd90', 'd91', 'd119', 'd144', 'd181', 'd399'],
    'q2': ['d236', 'd166'],
    'q3': ['d552', 'd401', 'd1297', 'd1296'],
}

你之前尝试的代码out = {k: 'd'+str(v) for k,v in out.items()}错误地将整个列表转为字符串后添加前缀,导致结果不符合预期。

正确的做法是在字典推导式中嵌套列表推导式,遍历每个列表里的元素单独处理:

# 使用f-string格式化(Python 3.6+)
out = {k: [f'd{num}' for num in v] for k, v in original_dict.items()}

# 或者使用字符串拼接
out = {k: ['d' + str(num) for num in v] for k, v in original_dict.items()}

这段代码的逻辑是:

  • 外层字典推导式遍历原字典的每一组键值对(k是键,v是对应的值列表)
  • 内层列表推导式遍历当前值列表v中的每个元素num,为其添加前缀'd'后组成新的列表
  • 最后将新列表作为键k对应的新值,构建出目标字典

内容的提问来源于stack exchange,提问作者Hefe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 19:09:32