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

标签 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': 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)}

引用dict comprehensions (PEP 274)详情

关于python - 如何调用循环中生成的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16377051/

相关文章:

python - 如何在python中检查文件夹中的新文件

python - 如何从 url 中的模板传递 pk 以在 View "Django"中使用?

c# - 从分隔字符串填充 Dictionary<String,String> 的最 'elegant' 方法

javascript - 如何在 JavaScript 中将键值对数组添加到 Map 中?

Python 3.6 合并字典失败

python - Python中异常的程序流程和变量修改

php - 奇怪的变量/Mysql 问题

Python字典根据键值对变量名进行变量赋值

variables - SSIS在运行时设置变量

actionscript - 对象和字典之间的区别?