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

如何通过字符串拼接变量名后缀实现动态变量取值?

如何根据字符串后缀动态获取变量值

推荐方案:用字典存储映射(最优解,一行搞定)

别单独定义Price_S、Price_M这类零散变量了,直接用字典把尺寸和价格做对应映射,不仅一行就能完成赋值,代码还更清晰易维护:

Size = 'M'
price_map = {'S': 1.52, 'M': 2.62, 'L': 3.98}

cost = price_map[Size]

后续要加新尺寸,直接在字典里追加键值对就行,完全不用修改逻辑代码。

如果你非要用原有的单独变量(不推荐)

可以通过globals()或locals()函数动态获取变量,同样一行代码就能实现,完全不需要for循环:

Size = 'M'
Price_S = 1.52
Price_M = 2.62
Price_L = 3.98

cost = globals()[f'Price_{Size}']

不过这种方式不建议使用——代码可读性差,变量名拼写错误会直接触发报错,而且如果是函数内部的局部变量,得换成locals(),很容易踩作用域的坑。

总结:优先选字典方案,既简洁又符合Python编码规范;实在要处理单独变量,用上面的globals()写法也能一行搞定,根本不需要循环。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 09:56:03