我正在自学Python,并一直使用Codecademy作为工具。我已经理解了使用字典的某些键进行编写的基本前提,但是我意识到使用循环将键添加到字典会更容易,特别是如果以后必须修改代码,并且每个字典都有相同的值。但是,我无法让代码返回所需的值:
students = {"lloyd" : [], "alice" : [], "tyler" : []}
for student in students:
student = {
"name" : [],
"homework" : [],
"quizzes" : [],
"tests" : []
}
print students
但结果是:
{'tyler': [], 'lloyd': [], 'alice': []}
None
我该怎么设置,这样。。。它。。。实际上是工作,我有“名字”、“作业”、“考试”和“测验”都在学生的名字下?你知道吗
首先,你什么都不是。其次,您正在覆盖'student'变量,并且从不保存您创建的值。你应该保持跟踪,或者在进行时修改dict:
Python也支持这类的类,尽管您可能还没有接触到教程的这一部分:
然后你可以有一些与学生相关的行为:
然后你可以和学生互动:
问题是您正在重新分配循环中的
student
变量,但原始字典保持不变。 如果您想使用dict来实现这一点,规范的方法是使用工厂函数从模板生成dict,然后使用它来创建学生词典。你知道吗也就是说,最好还是上课(根据另一个答案)。你知道吗
相关问题 更多 >
编程相关推荐