av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

求大神解讀一段神級(jí)的Python代碼,謝謝!!

瀏覽:156日期:2022-06-27 08:00:40

問(wèn)題描述

def combine_dicts(a, b): if b is None:return a return dict(a.items() + b.items() +[(k, combine_dicts(a[k], b[k])) for k in set(b) & set(a)])

a和b這里應(yīng)該都是dict型數(shù)據(jù),這個(gè)函數(shù)怎么理解呢,尤其是最后一個(gè)return那里??

問(wèn)題解答

回答1:

這是 Python 2 的寫法。來(lái)個(gè) Python 3.6 版:

def dict_deep_merge(a, b): if not b: return a return {**a, **b, **{k: dict_deep_merge(a[k], b[k]) for k in set(a) & set(b)}}

應(yīng)該高效一點(diǎn)。別的差不多。

并不算什么神級(jí)代碼,也不是很難理解。遞歸合并相同 key 的值而已。你需要知道的知識(shí)點(diǎn):

dict 的 items 方法

tuple 的相加

集合的交

dict 參數(shù)的意義

回答2:

函數(shù)的作用合并兩個(gè)dict比如a = {’a’: {’A’: 1}, ’b’: 1}b = {’a’: {’B’: 1}}合并成{’a’: {’A’: 1, ’B’: 1}, ’b’: 1}set(b) & set(a)是取a,c的key交集,如上a,b的key交集為a, 再遞歸運(yùn)行子dict回答3:

提問(wèn)一下,代碼是有一定的問(wèn)題吧,如果相同的key里,value值是字符串的話,items這個(gè)函數(shù)會(huì)報(bào)錯(cuò)吧?

標(biāo)簽: Python 編程
主站蜘蛛池模板: 成人一区二区在线 | 国产精品久久久久久久久免费丝袜 | 免费黄色特级片 | 国产精品免费在线 | 国产在线观看网站 | 狠狠综合久久av一区二区小说 | 成人精品免费视频 | 欧美一级黄视频 | 日韩一区二区黄色片 | 天天干天天插 | 成人免费在线播放 | 久久性色 | 天天操天天射天天舔 | 国产精品精品 | 伦理一区二区 | 亚洲精品99 | 青青草国产在线观看 | 午夜精品视频 | 亚洲综合色 | 欧美a区 | 亚洲免费一区二区 | 综合一区二区三区 | 欧洲成人午夜免费大片 | 精品久久久久久久久久久久久久 | 免费看啪啪网站 | avmans最新导航地址 | 99久久免费观看 | 日韩精品一区二区三区免费观看 | 91精品国产综合久久久亚洲 | 国产一级大片 | 中文字幕一区二区三区四区 | 黄色网址免费在线观看 | 不卡欧美 | 男人天堂国产 | 欧美一区二区三区在线看 | 精品一区二区三区在线观看 | 亚洲成人免费在线观看 | 国产专区在线 | 九九伊人sl水蜜桃色推荐 | 99热电影| 国产午夜视频 |