Python 是否可以对嵌套在列表中的字典的键、值进行迭代/循环?
所以我用的是速成班2e 我在ex 6-7:“从你为练习6-1(第102页)编写的程序开始。制作两个代表不同人群的新词典,并将所有三个词典存储在一个名为 人 .循环浏览您的人员列表。在循环浏览列表时,打印您所知道的每个人的所有信息。” 我的代码格式如下(出于隐私原因,值已替换为“值”:Python 是否可以对嵌套在列表中的字典的键、值进行迭代/循环?,python,list,loops,dictionary,Python,List,Loops,Dictionary,所以我用的是速成班2e 我在ex 6-7:“从你为练习6-1(第102页)编写的程序开始。制作两个代表不同人群的新词典,并将所有三个词典存储在一个名为 人 .循环浏览您的人员列表。在循环浏览列表时,打印您所知道的每个人的所有信息。” 我的代码格式如下(出于隐私原因,值已替换为“值”: people = [] #add person to empty list person = { 'first_name' : 'value', 'last_name' : 'value',
people = []
#add person to empty list
person = {
'first_name' : 'value',
'last_name' : 'value',
'city' : 'value',
}
people.append(person)
#add person to empty list
person = {
'first_name' : 'value',
'last_name' : 'value',
'city' : 'value',
}
people.append(person)
#add person to empty list
person = {
'first_name' : 'value',
'last_name' : 'value',
'city' : 'value',
}
people.append(person)
#verify list has persons added
print(people)
现在,对于for循环部分,是否可以访问与列表中的每个字典相关联的键和值?我尝试了,但失败了。我想我可以用字典做什么,例如:
for key, value in people.items():
然后在打印调用中使用f字符串进行后续操作
我知道如果“people”是一本字典,它会起作用,但我假设发生以下错误,因为它是一个列表:
“AttributeError:'list'对象没有属性'items'”
因此,简言之:
当.items()前面有一个嵌套了字典的列表时,是否可以使用它循环?在上述情况下,我如何访问每个键、值对
有没有比我最终找到的工作更简单的方法:
for person in people:
name = f"{person['first_name'].title()} {person['last_name'].title()}"
residence = f"{person['city'].title()}"
print(f"{name} lives in {residence}.")
提前感谢各位!.items()
起到了作用
for list_entry in people:
for propertie_ikey, propertie_item in list_entry.items():
print(propertie_ikey, propertie_item)
只需在
上为key,value-in-person.items()创建一个循环:
嵌套在for-person-in-person:
循环中。(记住在内部循环中进一步缩进语句。)