python - 我可以像 python 中的字典引用一样对对象进行可变化吗

标签 python dictionary variable-assignment

我有一系列字典,其中包含我想在最后组合的值。组合很困惑,所以我不能只根据键组合我必须工作的词典并做出一些谨慎的选择。当我创建字典时,我以 item#Dict 的形式创建了它们,期望做类似的事情

for value in ['8','10','11','12','13','14','15','18','19','20']:
    dictName='item'+value+'Dict'

但我很快了解到 dictName 是一个字符串,而不是对我的字典的引用。

有没有一种方法可以使用某种模式类型的方法来引用我的字典?

我确实看到另一种方法是在创建字典时将我所有的字典添加到列表中,然后遍历列表——这个解决方案只是在我写这个问题时才想到的。但我很想知道是否有某种方法可以实现我原来的方法。

谢谢

最佳答案

您可以使用 locals获取包含当前局部范围内变量的字典的函数:

>>> var0 = 7
>>> var1 = 3
>>> var2 = 4
>>> var3 = 5
>>> for i in range(4):
...    print 'var', i, 'is', locals()['var%d' % i]
... 
var 0 is 7
var 1 is 3
var 2 is 4
var 3 is 5

不过,我真的不建议这样做。我建议将您的变量放入字典或列表中,就像您在帖子中提到的那样。

关于python - 我可以像 python 中的字典引用一样对对象进行可变化吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7748596/

相关文章:

python - 如何在一行中读取 A 列到 B 列的所有字符

python - 创建字典的更优雅代码的提示

javascript - 在javascript中分配不存在的变量

javascript - ES6 解构赋值 `this`

python - 看门狗监控文件的变化

python - 展平嵌套的生成器表达式

python - 列表理解过滤 - "the set() trap"

java - 如何在ViewText上添加换行符?

python - 在 python 中,如何将一系列命令分配给一个变量?

string - 变量插值期间的 bash 行连接