使用eval-python批量生成变量

时间:2017-05-02 19:42:32

标签: python eval

我想生成大约100个变量,每个变量都分配给它自己的整数 例如,number_1 = 1,number_2 = 2,number_3 = 3等。我试图以下列方式使用eval:

for x in range(1,101):
   eval('number_'+str(x)) = x

我收到错误'无法分配给函数调用'。 我也试过了:

for x in range(1,101):
   eval(('number_'+str(x)) = x)

哪个给出错误'关键字不能是表达式' 有没有办法做到这一点? 我知道与eval和exec相关的风险,但我的代码中没有用户输入或Internet访问。 谢谢!

编辑:这与其他建议的线程不同,因为我在这里试图改变变量的名称及其值。

1 个答案:

答案 0 :(得分:-2)

您可以使用exec

for i in range(100):
    exec('number_{0} = {0}'.format(i))

enter image description here