【发布时间】:2018-02-19 08:09:44
【问题描述】:
如何转换变量名中的字符串? 我有多个变量 value1、value2、value3 和 value1 = 5 当我使用
x = 1
print(str("value" + str(x)))
它返回“value1”而不是“5”
编辑:它不是重复的,因为我问的是如何解决我的问题,而不是使用 eval 是好是坏(这是你提到我的链接)
所以当我使用 eval 更改变量的值时它不起作用(“无法分配给函数调用”),
global('newValue' + str(z))
eval('newValue' + str(z)) = y + value
如果你不推荐使用 eval 你应该改用什么?因为我有很多 'if value1
【问题讨论】:
-
我建议你使用字典。我相信这对您的情况会更好,更舒适。无论如何,您可以尝试类似
exec("print(value" + str(x) + ")")的方法,但这是一种糟糕的做法。
标签: python string variables variable-names