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

如何从字典的键与值中移除维度部分并转换为整数?

如何移除字典中的维度信息并转换为整数字典?

嘿,这个需求很直观,咱们可以用Python的字符串处理和字典推导式快速搞定。先看完整的实现代码,再拆解每一步的逻辑:

# 原始字典
Open = {
    '22.0x7.5x8.0 12.0': ['4.60x4.30x4.30 13.00, 4.60x4.30x4.30 1.00, 4.60x4.30x4.30 2.00, 6.60x6.00x5.16 5.00'],
    '18.0x7.0x7.0 7.0': ['4.60x4.30x4.30 1.00, 8.75x6.60x5.60 4.00'],
    '22.0x7.5x8.0 9.0': ['6.60x6.00x5.16 5.00, 6.60x6.00x5.16 9.00, 6.60x6.00x5.16 5.00']
}

# 转换逻辑
new = {
    int(float(key.split()[-1])):  # 处理键:分割后取数字部分转整数
    [int(float(item.split()[-1])) for item in value[0].split(', ')]  # 处理值:拆分每个项后转整数
    for key, value in Open.items()
}

# 验证结果
print(new)

关键步骤拆解:

  • 处理字典的键:每个键是"维度 数字"的格式,用split()按空格分割后,取最后一个元素(比如"12.0"),先转成float再转int,就能得到整数12。
  • 处理字典的值:每个值是一个包含逗号分隔字符串的列表,先取列表里的唯一元素(value[0]),用split(', ')拆分成单个的"维度 数字"项,再对每个项重复键的处理逻辑,提取数字转整数,最后组成新的列表。
  • 字典推导式:用一行代码完成整个字典的转换,比循环更简洁高效。

运行这段代码后,你会得到完全符合需求的结果:

{12: [13, 1, 2, 5], 7: [1, 4], 9: [5, 9, 5]}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.12 05:08:49