我有一本很大的字典,里面有一個(gè)叫做交通的列表。這是我的字典的一個(gè)小例子:{'redlights': [{'id': 32,'userid': '3','time': '2013-09-T17:12:00+05:00','calls': 1,'crossings': '0','bad_behaviour': '0','senior': False,'cat': False,'dog': True,'hitrun': 'David Williams'},{'id': 384,所以,我把它稱為你好作為一個(gè)測試。我想要列表紅燈中包含“高級”且值為“假”的所有鍵。我首先嘗試了這種 dict 理解來獲取所有帶有高級的鍵:hello = traffic['redlights']new = {key: value for key, value in hello.items() if key == senior}但后來我得到了這個(gè)錯(cuò)誤: AttributeError: 'list' object has no attribute 'items'可能是因?yàn)樗且粋€(gè)列表,但我不知道如何獲取其中包含高級值且值為 false 的鍵。它必須在紅燈列表中,因?yàn)槠渌斜聿幌嚓P(guān)。我如何在聽寫理解中做到這一點(diǎn)?
1 回答
紅糖糍粑
TA貢獻(xiàn)1815條經(jīng)驗(yàn) 獲得超6個(gè)贊
hello不是字典,它是(字典的)列表,而列表沒有items. 您必須遍歷列表中的每個(gè)字典。此示例將獲取id每個(gè)字典的senior=False.
res = [d['id'] for d in hello if not d['senior']]
添加回答
舉報(bào)
0/150
提交
取消
