利用循环进行动态变量的声明赋值及调用

Posted WINNER_QIUQIU

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了利用循环进行动态变量的声明赋值及调用相关的知识,希望对你有一定的参考价值。

exec函数

在python中,可采用如下方式对变量进行声明并赋值:
v a r 0 , v a r 1 = 1 , 2 var0,var1=1,2 var0,var1=1,2
但是当变量数目过多时,采取以上方式对不同变量进行声明并赋值显然是不可取的。于是引入exec函数,很好用。
举个例子:假如我要声明十个变量分别叫做list0,list1,list2…,并对它们分别赋值为0,1,2…那么我们就可以写一个循环:

for i in range(10):
    exec('list='.format(i,i))

有人可能会问,如果想自由赋值怎么办。很简单,只需要将format中第二个i改为输入语句即可。

for i in range(10):
    exec('list='.format(i,int(input())))

同理,如果想动态声明列表并赋值,只需将输入转化为列表类型:

for i in range(10):
    exec('list='.format(i,list(input())))

除了动态声明赋值变量,exec函数还可以调用动态变量,代码如下:

for i in range(10):
    exec('print(list,end=" ")'.format(i))

总之,利用exec函数便可很好的解决声明赋值及调用动态变量的问题。

以上是关于利用循环进行动态变量的声明赋值及调用的主要内容,如果未能解决你的问题,请参考以下文章

文件包含漏洞及利用

Python动态地声明变量赋值

GroovyGroovy 动态语言特性 ( Groovy 中的变量自动类型推断以及动态调用 | Java 中必须为变量指定其类型 )

为结构变量动态赋值

for循环变量声明为 final

JavaScript入门第二章(变量声明/赋值/取值)