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

如何计算Python列表中代表变量名的字符串元素对应值之和

实现方案

核心逻辑是把每个字符串拆成单个字符,匹配每个字符对应的变量值,再拼接加法表达式、计算求和结果即可,有两种常见写法:

  • 写法1(推荐):单独维护变量和值的映射字典,逻辑独立不会和全局其他变量冲突
# 定义变量名和对应值的映射
var_dict = {
    "a": 1,
    "b": 2,
    "c": 3
}
a_list = ["ab", "abc", "ac", "b"]

for item in a_list:
    # 拼接加法表达式
    expression = "+".join(item)
    # 计算所有对应值的和
    sum_result = sum(var_dict[char] for char in item)
    # 按格式输出
    print(f"{expression} = {sum_result}")
  • 写法2:直接读取当前全局环境下的已定义变量,适合变量已经提前定义好不想重复写映射的场景,通过Python内置的globals()获取全局变量字典即可
a = 1
b = 2
c = 3
a_list = ["ab", "abc", "ac", "b"]

for item in a_list:
    expression = "+".join(item)
    sum_result = sum(globals()[char] for char in item)
    print(f"{expression} = {sum_result}")

两段代码运行后输出结果一致:

a+b = 3
a+b+c = 6
a+c = 4
b = 2

注:你给出的期望输出里b = 3属于笔误,按照你定义的b=2,单独b的计算结果应为2

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 14:30:41