2018-04-28 對比兩個字典-遞歸法

def cmp_dict(src_data,dst_data):

? ? assert type(src_data) == type(dst_data),"type: '{}' != '{}'".format(type(src_data), type(dst_data))?

? ? if isinstance(src_data,dict):?

? ? ? ? assert len(src_data) == len(dst_data),"dict len: '{}' != '{}'".format(len(src_data), len(dst_data))?

? ? ? ? for key in src_data:? ? ? ? ? ? ? ? ?

? ? ? ? ? ? assert dst_data.has_key(key)? ? ?

? ? ? ? ? ? cmp_dict(src_data[key],dst_data[key])? ? ?

? ? elif isinstance(src_data,list):? ? ? ? ? ? ? ? ? ?

? ? ? ? assert len(src_data) == len(dst_data),"list len: '{}' != '{}'".format(len(src_data), len(dst_data))? ? ?

? ? ? ? for src_list, dst_list in zip(sorted(src_data), sorted(dst_data)):?

? ? ? ? ? ? cmp_dict(src_list, dst_list)?

? ? else:?

? ? ? ? assert src_data == dst_data,"value '{}' != '{}'".format(src_data, dst_data)?

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容