python - 将多个 python 字典初始化为相同的键名和值

标签 python dictionary

我希望能够循环遍历我的主函数和bin值到这些字典中的某些键。所有六个词典都具有相同的键名,但词典是唯一的。有没有更好的方法 1. 初始化所有字典(即字典理解)或 2. 以更好的方式存储这些数据(即嵌套字典、命名元组...)

这是我当前的字典初始化:

TRI_1 = {'HF' : 0, 'NHF' : 0, 'TF' : 0, 'HM' : 0, 'NHM' : 0, 'TM' : 0}
TRI_2 = {'HF' : 0, 'NHF' : 0, 'TF' : 0, 'HM' : 0, 'NHM' : 0, 'TM' : 0}
TRV_1 = {'HF' : 0, 'NHF' : 0, 'TF' : 0, 'HM' : 0, 'NHM' : 0, 'TM' : 0}
TRV_2 = {'HF' : 0, 'NHF' : 0, 'TF' : 0, 'HM' : 0, 'NHM' : 0, 'TM' : 0}
TRV_3 = {'HF' : 0, 'NHF' : 0, 'TF' : 0, 'HM' : 0, 'NHM' : 0, 'TM' : 0}
TRV_4 = {'HF' : 0, 'NHF' : 0, 'TF' : 0, 'HM' : 0, 'NHM' : 0, 'TM' : 0}

编辑:我的解决方案。我将来会记住 g.d.d.c. 的方法,但我需要有初始零值的键,这样我就可以简单地打印 TRI_1 并显示 {'key' : 0 } 。这是 Padraic 的字典模板和 Aleksi 的理解的结合。感谢您提供简单的可扩展解决方案!

TEMP = dict.fromkeys('HF NHF TF HM NHM TM'.split(), 0)
TRI_1, TRI_2, TRV_1, TRV_2, TRV_3, TRV_4 = ([dict(TEMP) for i in range(6)])

最佳答案

如果您想要字典模板:

template_dict = {'HF': 0, 'NHF': 0, 'TF': 0, 'HM': 0, 'NHM': 0, 'TM': 0}

TRI_1,TRI_2={},{}
TRI_1.update(template_dict)
TRI_2.update(template_dict)
print TRI_1,TRI_2
{'TF': 0, 'NHF': 0, 'HM': 0, 'NHM': 0, 'HF': 0, 'TM': 0} {'TF': 0, 'NHF': 0, 'HM': 0, 'NHM': 0, 'HF': 0, 'TM': 0}

您可以创建新词典并使用模板更新它们,这样您就不必每次需要新词典时都手动输入数据。

或者简单地说:

TRI_1 = dict(template)

关于python - 将多个 python 字典初始化为相同的键名和值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24209830/

相关文章:

python - OpenCV Python GTK错误

python - 如何使用 gitlab-ci 部署单个 python 脚本?

c# - 如何验证我分配给组合框的字典值是我认为的值?

python - 在Python中求解具有时间相关系数的常微分方程(odeint)

swift - 在 Swift 2.0 中访问字典项时出现问题

python - 使用单行循环两个字典来创建列表

python - Eclipse - Pydev,无法识别未导入的方法

python - 在Python中使用Unix命令(在我的例子中是node.js/lessc)?

python - 将 Python 字典列表转换为键到字典其余部分的映射

python - 如何从Python中的字典列表中合并字典?