在函数外一切使用正常
#生产变量如 lis0 lis1 默认空列表 并打印出来
for i in range(0,11):
locals()['lis%d' % i] = []
print('lis%d : %s' % (i,eval('lis%d' % i)))
#单独给变量 lis3 append(6)
lis3.append(6)
#全部变量 append(2)打印 lis0~lis10 变量
for i in range(0,11):
eval('lis%d' % i).append(2)
print('lis%d : %s' % (i,eval('lis%d' % i)))
但是把他包裹在函数中使用
def func():
上面的代码
func()
在 lis3.append(6)这里就报错:变量名没定义
但是当我使用 eval('list3').append(6)就正常了
想请问是为什么以及该如何解决 谢谢
#生产变量如 lis0 lis1 默认空列表 并打印出来
for i in range(0,11):
locals()['lis%d' % i] = []
print('lis%d : %s' % (i,eval('lis%d' % i)))
#单独给变量 lis3 append(6)
lis3.append(6)
#全部变量 append(2)打印 lis0~lis10 变量
for i in range(0,11):
eval('lis%d' % i).append(2)
print('lis%d : %s' % (i,eval('lis%d' % i)))
但是把他包裹在函数中使用
def func():
上面的代码
func()
在 lis3.append(6)这里就报错:变量名没定义
但是当我使用 eval('list3').append(6)就正常了
想请问是为什么以及该如何解决 谢谢
