使用 eval 批量生成变量 - python
Mass producing variables using eval - python
我想生成大约 100 个变量,每个变量都分配给自己的整数
因此,例如,number_1=1、number_2=2、number_3=3 等。我尝试通过以下方式使用 eval:
for x in range(1,101):
eval('number_'+str(x)) = x
我收到错误 'cant assign to function call'。
我也试过:
for x in range(1,101):
eval(('number_'+str(x)) = x)
出现错误“关键字不能是表达式”
有没有办法做到这一点?
我知道与 eval 和 exec 相关的风险,但我的代码中没有用户输入或互联网访问。
谢谢!
编辑:这与其他线程建议的不同,因为在这里我试图更改变量的名称及其值。
你可以使用 exec
.
for i in range(100):
exec('number_{0} = {0}'.format(i))
我想生成大约 100 个变量,每个变量都分配给自己的整数 因此,例如,number_1=1、number_2=2、number_3=3 等。我尝试通过以下方式使用 eval:
for x in range(1,101):
eval('number_'+str(x)) = x
我收到错误 'cant assign to function call'。 我也试过:
for x in range(1,101):
eval(('number_'+str(x)) = x)
出现错误“关键字不能是表达式” 有没有办法做到这一点? 我知道与 eval 和 exec 相关的风险,但我的代码中没有用户输入或互联网访问。 谢谢!
编辑:这与其他线程建议的不同,因为在这里我试图更改变量的名称及其值。
你可以使用 exec
.
for i in range(100):
exec('number_{0} = {0}'.format(i))