让我们看看我搞砸了多么糟糕 这应该是看起来像什么
Students
1 - MICHAEL JORDAN - 13
2 - JOHN ROSALES - 11
3 - MARK GUILLEN - 11
4 - KB TONEL - 7
Instructors
1 - MICHAEL CHOI - 11
2 - MARTIN PURYEAR - 13
两个额外的阵列怎么会让我为一个循环。我为第一个调用了for循环,因此有学生和教师。然后我调用了键和值。有人可以看看这个并指出我正确的方向来解决这个混乱
users = {
'Students': [
{'first_name': 'Michael', 'last_name' : 'Jordan'},
{'first_name' : 'John', 'last_name' : 'Rosales'},
{'first_name' : 'Mark', 'last_name' : 'Guillen'},
{'first_name' : 'KB', 'last_name' : 'Tonel'}
],
'Instructors': [
{'first_name' : 'Michael', 'last_name' : 'Choi'},
{'first_name' : 'Martin', 'last_name' : 'Puryear'}
]
}
for i in users:
for i in Students:
print ([i['first_name'], i['last_name']] , + len([i['first_name'], i['last_name']
for i in Instructors:
print ([i['first_name'], i['last_name']] , + len([i['first_name'], i['last_name'0]
答案 0 :(得分:0)
基本上,你试图用你的循环覆盖i
的值,你应该避免这样做,当你只使用for i in users:
时你只是通过键进行迭代 of dict users
,你可以使用dict.items()或dict.iteritems()来访问字典中的键值对。
以下是您的更新代码,以防万一。
for usr, info in users.iteritems():
print "{}".format(usr)
for i, _info in enumerate(info, 1):
name = "{first_name} {last_name}".format(**_info).upper()
print "{} - {} - {}".format(i, name, len(name)-1)
我将留给您理解代码中使用的代码和内置函数。