我有字典列表a = [{'id':'1','name':'john'}, {'id':'2','name':'johns'}, {'id':'3','name':'rock'}id我想顯示使用該值'2'搜索字典的字典,想要的輸出是這樣的{'id':'2','name':'johns'}如何讓字典顯示成這樣呢?
1 回答

阿波羅的戰(zhàn)車
TA貢獻(xiàn)1862條經(jīng)驗(yàn) 獲得超6個(gè)贊
您可以使用列表理解,時(shí)間復(fù)雜度為 O(n):
a = [{'id':'1','name':'john'}, {'id':'2','name':'johns'}, {'id':'3','name':'rock'}]
# [{'id': '2', 'name': 'johns'}]
print([d for d in a if d['id'] == '2'])
然而,將數(shù)據(jù)表示為字典的效率更高,時(shí)間復(fù)雜度為 O(1):
a = {'1': {'name' : 'john'}, '2': {'name' : 'johns'}, '3': {'name' : 'rock'}}
# {'name': 'johns'}
print(a['2'])
添加回答
舉報(bào)
0/150
提交
取消