Python中如何通过字符串拼接引用字符串变量?
如何通过字符串拼接结果访问对应变量并索引?
你可以通过Python的globals()或locals()函数实现这个需求,这两个函数能分别返回全局和局部作用域内的变量字典,你可以用拼接好的变量名字符串作为键,从字典里取出对应的变量值,再进行索引操作。
方法一:使用globals()(全局作用域场景)
如果你的变量定义在全局作用域里,直接用globals()获取变量字典:
row1 = "12345" row2 = "ABCDEFG" row3 = "98765" i = 2 j = 3 # 拼接出目标变量名 var_name = f"row{i}" # 从全局变量字典中取出对应的字符串 target_string = globals()[var_name] # 索引获取对应字符 result = target_string[j] print(result) # 输出:D
方法二:使用locals()(局部作用域场景)
如果变量定义在函数这类局部作用域内,用locals()更合适:
def get_target_char(): row1 = "12345" row2 = "ABCDEFG" row3 = "98765" i = 2 j = 3 var_name = f"row{i}" target_string = locals()[var_name] return target_string[j] print(get_target_char()) # 输出:D
注意:这种通过字符串动态访问变量的写法,在实际项目中并不推荐——它会降低代码可读性,还容易引发变量名冲突等问题。但作为理解字符串拼接和变量作用域的练习,确实能帮你加深对Python基础的理解。
内容的提问来源于stack exchange,提问作者Scot_Chaos
相关产品推荐
相关产品推荐

