for循环词典不起作用

时间:2015-07-04 21:14:11

标签: python for-loop dictionary

我需要创建三个词典。我想使用for循环来做到这一点,但它并没有像我想要的那样。这是我的代码:

names=["lloyd", "alice", "tyler"]

for name in names:
    name = {
        "name": [name],
        "homework": [],
        "quizzes": [], 
        "tests":[],
        }

正在创建三个词典,但这些词典存储在变量name中。我假设第二个name(在开始for循环的行之后)也将替换为names中存储的值,但这不会发生。怎么会?我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

names=["lloyd", "alice", "tyler"]

name_dicts = []

for name in names:
    name_dicts.append({
        "name": [name],
        "homework": [],
        "quizzes": [], 
        "tests":[],
        })

现在你有一个包含所有名字的字典数组。

根据@johnsharpe尝试避免对不同的东西使用相同的变量名(你应该阅读他的链接 - 非常有帮助)