Python 根据键的值将字典键附加到列表中
在for循环中迭代时,如果某个字典项的值为Python 根据键的值将字典键附加到列表中,python,list,loops,dictionary,append,Python,List,Loops,Dictionary,Append,在for循环中迭代时,如果某个字典项的值为1,我会尝试将该项的键附加到列表中 我得到的是: peeps = {'scoobydoo':0, 'shaggy':0, 'scrappydoo':0, 'velma':1, 'freddy':0, 'daphne':1} ignore_list = [] for peep in peeps: if peep == 1: ignore_list.append(peep) print(ignore_list) 然而,这并没有给我我
1
,我会尝试将该项的键附加到列表中
我得到的是:
peeps = {'scoobydoo':0, 'shaggy':0, 'scrappydoo':0, 'velma':1, 'freddy':0, 'daphne':1}
ignore_list = []
for peep in peeps:
if peep == 1:
ignore_list.append(peep)
print(ignore_list)
然而,这并没有给我我所期望的:
['velma', 'daphne']
它打印一个空列表:
[]
您正在迭代键,而不是值。因此,您需要将该键与实际字典相结合,以检查对应键的值是否等于1
peeps = {'scoobydoo':0, 'shaggy':0, 'scrappydoo':0, 'velma':1, 'freddy':0, 'daphne':1}
ignore_list = []
for peep in peeps:
if peeps[peep] == 1:
ignore_list.append(peep)
print(ignore_list)
或
您正在迭代键,而不是值。因此,您需要将该键与实际字典相结合,以检查对应键的值是否等于1
peeps = {'scoobydoo':0, 'shaggy':0, 'scrappydoo':0, 'velma':1, 'freddy':0, 'daphne':1}
ignore_list = []
for peep in peeps:
if peeps[peep] == 1:
ignore_list.append(peep)
print(ignore_list)
或
您没有检查值,只检查键本身
通过访问该值来检查该值:
for peep in peeps:
if peeps[peep] == 1:
ignore_list.append(peep)
或同时循环键和值:
for peep, peep_value in peeps.items():
if peep_value == 1:
ignore_list.append(peep)
您可以在此处使用列表理解一步构建列表:
ignore_list = [peep for peep, peep_value in peeps.items() if peep_value == 1]
您没有检查值,只检查键本身
通过访问该值来检查该值:
for peep in peeps:
if peeps[peep] == 1:
ignore_list.append(peep)
或同时循环键和值:
for peep, peep_value in peeps.items():
if peep_value == 1:
ignore_list.append(peep)
您可以在此处使用列表理解一步构建列表:
ignore_list = [peep for peep, peep_value in peeps.items() if peep_value == 1]
您可以迭代字典中的键和值以完成所需的操作:
peeps = {'scoobydoo':0, 'shaggy':0, 'scrappydoo':0, 'velma':1, 'freddy':0, 'daphne':1}
ignore_list = []
for key, value in peeps.items():
if value == 1:
ignore_list.append(key)
print(ignore_list)
您可以迭代字典中的键和值以完成所需的操作:
peeps = {'scoobydoo':0, 'shaggy':0, 'scrappydoo':0, 'velma':1, 'freddy':0, 'daphne':1}
ignore_list = []
for key, value in peeps.items():
if value == 1:
ignore_list.append(key)
print(ignore_list)
谢谢,我正要使用iteritems(),但是peeps[peep]很简单,效果也很好,谢谢Avinash和Martijn!谢谢,我正要使用iteritems(),但是peeps[peep]很简单,效果也很好,谢谢Avinash和Martijn!我需要调查一下那份清单。在一行中完成某事似乎很好。你们知道什么好的教程吗?@mdandr:你们可以从开始。我需要看看那个些理解列表的东西。在一行中完成某事似乎很好。知道什么好的教程吗?@mdandr:你可以从这个开始。