3 回答

TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超4個(gè)贊
你可以用字典理解來做到這一點(diǎn):
combined_dict = {i: {j: dict2[j] for j in dict1[i]} for i in dict1}
輸出:
>>> from pprint import pprint as pp
>>> pp(combined_dict)
{'shopid1': {'userid1': ['2020-08-17 09:00', '2020-08-18 08:30'],
'userid2': ['2020-08-16 11:00', '2020-08-15 13:30'],
'userid3': ['2020-08-18 09:30',
'2020-08-18 10:00',
'2020-08-18 11:30']}}

TA貢獻(xiàn)1735條經(jīng)驗(yàn) 獲得超5個(gè)贊
dict1 = {'shopid1':['userid1','userid2','userid3']}
dict2 = {'userid1':['2020-08-17 09:00','2020-08-18 08:30'],
'userid2':['2020-08-16 11:00','2020-08-15 13:30'],
'userid3':['2020-08-18 09:30','2020-08-18 10:00','2020-08-18 11:30']}
combined_dict ={'shopid1':{'userid1':['2020-08-17 09:00','2020-08-18 08:30'],
'userid2':['2020-08-16 11:00','2020-08-15 13:30'],
'userid3':['2020-08-18 09:30','2020-08-18 10:00','2020-08-18 11:30']}}
for i in combined_dict:
print(i)
a=combined_dict[i]
for j in a:
b=a[j]
print(j)
for k in b:
print(k)

TA貢獻(xiàn)1829條經(jīng)驗(yàn) 獲得超7個(gè)贊
這是“理解”的一個(gè)很好的例子,它被優(yōu)化為比循環(huán)快得多:
combined_dict = { k:
? ? ? ? ? ? {u:t for (u,t) in dict2.items() if u in v}??
? ? ? ? ? ? for (k,v) in dict1.items()
? ? ? ? ? ? }
添加回答
舉報(bào)