Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/355.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何调用循环中生成的变量_Python_Variables_Dictionary - Fatal编程技术网

Python 如何调用循环中生成的变量

Python 如何调用循环中生成的变量,python,variables,dictionary,Python,Variables,Dictionary,我需要在循环中生成许多变量。我通过使用以下代码实现了这一点: nBottom=list of initially unknown size loc=locals() for k,val in enumerate(nBottom) : loc["imp_local"+str(k)]=700 for k,val in enumerate(nBottom) : loc["imp_global"+str(k)]=600 现在我需要与他们合作,创建一个字典,如: dic1={'imp_local0':

我需要在循环中生成许多变量。我通过使用以下代码实现了这一点:

nBottom=list of initially unknown size
loc=locals()
for k,val in enumerate(nBottom) : loc["imp_local"+str(k)]=700
for k,val in enumerate(nBottom) : loc["imp_global"+str(k)]=600
现在我需要与他们合作,创建一个字典,如:

dic1={'imp_local0': 700, ..., 'imp_localn': 700}
dic2={'imp_global0': 700, ..., 'imp_globaln': 700}

我该怎么做?

不要生成局部变量。只需生成字典:

dict1 = {'imp_local'+str(k):700 for k,val in enumerate(nBottom)}
dict2 = {'imp_global'+str(k):600 for k,val in enumerate(nBottom)}

有关详细信息,请参阅不要生成局部变量。只需生成字典:

dict1 = {'imp_local'+str(k):700 for k,val in enumerate(nBottom)}
dict2 = {'imp_global'+str(k):600 for k,val in enumerate(nBottom)}

有关详细信息,请参阅。切勿使用局部变量添加变量。尤其是当你最终真的想把数据放在字典里的时候。只需从一开始就将其添加到字典:

nBottom=list of initially unknown size
dic1 = {}
dic2 = {}
for k,val in enumerate(nBottom) : dic1["imp_local"+str(k)]=700
for k,val in enumerate(nBottom) : dic2["imp_global"+str(k)]=600

完成了

永远不要使用局部变量添加变量。尤其是当你最终真的想把数据放在字典里的时候。只需从一开始就将其添加到字典:

nBottom=list of initially unknown size
dic1 = {}
dic2 = {}
for k,val in enumerate(nBottom) : dic1["imp_local"+str(k)]=700
for k,val in enumerate(nBottom) : dic2["imp_global"+str(k)]=600
完成了

loc=locals()
更改为
loc=dict()
。将
loc=locals()
更改为
loc=dict()