我知道我可以使用数组,然后可以轻松解决此问题。
但是我很好奇我的问题是否还有其他解决方案。 我想通过串联“ var” + x(1,2,3)来复制打印函数中的变量(var1,var2,var3)
var1 = "one"
var2 = "two"
var3 = "three"
for x in range(1, 4):
print ("var" + "%d" % (x))
所需的输出结果:
one
two
three
结果是:
var1
var2
var3
答案 0 :(得分:4)
您可以使用locals()
获取将本地变量名称映射到其值的字典,然后在代码尝试时按名称访问它:
var1 = "one"
var2 = "two"
var3 = "three"
for x in range(1, 4):
print (locals()["var" + "%d" % (x)])
答案 1 :(得分:1)
您可以使用vars()
获取当前模块中已定义变量的字典。
var1 = "one"
var2 = "two"
var3 = "three"
for x in range(1, 4):
print (vars()["var" + "%d" % (x)])
答案 2 :(得分:0)