首页 > 解决方案 > 如何在循环中使用变量来创建特定的变量名

问题描述

假设我想创建唯一的变量名,例如 var1, var2var3

我想使用索引来创建变量,例如

counter = 0
while counter < 4:
  varcounter = ...

我知道在 perl 中它会像

while $counter < 4 {
  var$counter = ...
}

我只是想知道python中是否有等效的东西。

标签: python

解决方案


您可以为此使用字典

your_dictionary = {}

i=0
while i<4:
    your_dictionary['var_'+str(i)] = i
    i+=1

输出

{
    "var_0": 0,
    "var_1": 1, 
    "var_2": 2,
    "var_3": 3
}

请不要使用exec它,因为代码是从字符串执行的,因此很容易破坏您的代码。这不是一个好习惯。此外,如果在函数内部使用,您不能使用它更新变量(感谢@Mars)。exec类似于dangerouslySetInnerHTMLinReactJSevalin jswhich 不建议在生产级应用中使用。


推荐阅读