所以我在test.py文件中有这个函数,代码如下:
def some_function():
for i in range(1, 6):
# Create 5 variables s1, s2, etc with values 1, 2 ...
exec("s{} = i".format(i, i))
print(s1)
但它给了我错误信息:
File "/some_directory/test.py", line 5, in test
print(s1)
NameError: name 's1' is not defined
但是,当我在解释器控制台中运行相同的代码时,没有任何错误,并且定义了所有变量s1,s2,s3 ..
为什么代码在封装后不起作用?