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

如何动态访问字符串值?循环中按需获取指定字符串变量值

解决方案:根据循环变量获取对应字符串值

方法1:贴合原框架的实现方式

如果要严格适配你给出的代码框架,可以通过globals()函数获取全局变量字典,动态拼接变量名来取值:

Str1 = "select * from tableA"
Str2 = "select * from tableB"

Src = "Str"
for i in range(1,3):
    # 拼接变量名并从全局字典中取出对应值
    new_str = globals()[f"{Src}{i}"]
    print(new_str)

运行后会依次输出:

select * from tableA
select * from tableB

方法2:更规范的推荐方案

动态拼接变量名的写法可读性和维护性较差,更推荐用字典存储索引与字符串的对应关系,逻辑更清晰:

# 用字典建立索引和字符串的映射
str_map = {
    1: "select * from tableA",
    2: "select * from tableB"
}

for i in range(1,3):
    new_str = str_map[i]
    print(new_str)

后续要新增或修改对应关系时,直接调整字典即可,避免了动态操作变量名的潜在风险。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 03:22:01