首页 > 解决方案 > 在 python 中使用占位符变量创建和更新字典

问题描述

我正在努力实现这样的目标

classroom = {"john" : {"grade_math": placeholder_grade_math,
                       "grade_physics": placeholder_grade_physics}

然后

grades = {"placeholder_grade_math": str(10),
          "placeholder_grade_physics": str(8))

所以现在我想将 的键grades与占位符匹配classroom并更新它。有没有这样做的pythonic方式?

我遇到了这个问题,但我试图在没有正则表达式的情况下实现同样的目标。

编辑:

我应该指出 dictclassroom像模板一样工作。它按原样传递给一个类。占位符变量是在执行过程中产生的,我想在不使用密钥的情况下更新它们。

当然预期的输出是

classroom = {"john" : {"grade_math": "10",
                       "grade_physics": "8"}

但不知何故“解包”gradesclassroom

另一个编辑:

现在说原来的classroom更改为

classroom = {"john" : {"grade_math": placeholder_grade_math,
                       "grade_physics": placeholder_grade_physics,
                       "grade_geometry": placeholder_grade_geometry}

grades保持不变。我希望进行“解包”的原因是因为我希望能够仅在 1 个位置 (the classroom) 修改键,并且占位符已填充,而无需我也必须修复其他部分 ( grades)。

标签: pythondictionary

解决方案


这是你想要的?

classroom = {"john" : {"grade_math": grades['placeholder_grade_math'],"grade_physics": grades['placeholder_grade_physics']}}

推荐阅读