国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

python ChainMap管理用法實例講解

瀏覽:3日期:2022-08-06 15:08:03
說明

1、ChainMap的主要用例是提供一種有效的方法來管理多個范圍或上下文,并處理重復鍵的訪問優(yōu)先級。

2、當有多個存儲重復鍵的字典訪問它們的順序時,這個功能非常有用。

在ChainMap文檔中找到一個經(jīng)典的例子,它模擬Python如何分析不同命名空間中的變量名稱。

當Python搜索名稱時,它會依次搜索當?shù)亍⑷趾蛢?nèi)置的功能域,直到找到目標名稱。Python作用域是將名稱映射到對象的字典。

為了模擬Python的內(nèi)部搜索鏈,可以使用鏈映射。

實例

>>> import builtins >>> # Shadow input with a global name>>> input = 42 >>> pylookup = ChainMap(locals(), globals(), vars(builtins)) >>> # Retrieve input from the global namespace>>> pylookup['input']42 >>> # Remove input from the global namespace>>> del globals()['input'] >>> # Retrieve input from the builtins namespace>>> pylookup['input']<built-in function input>

知識點擴展:

ChainMap類管理的是一個字典序列,并按其出現(xiàn)的順序搜索以查找與鍵關聯(lián)的值。ChainMap提供了一個很好的“上下文”容器,因此可以把它看成一個棧,棧增長時發(fā)生變更,棧收縮時這些變更被丟棄。

下面,我們來看看其基本的使用規(guī)則:

import collectionsa = {'a': 'A', 'c': 'c', }b = {'b': 'B', 'c': 'D', }col = collections.ChainMap(a, b)# 和普通字典一樣訪問print(col['a'])print(list(col.keys()), list(col.values()))for key, value in col.items(): print(key, value)

可以看到,在相同的key值情況下,只有子映射a的值。這也就是說明ChainMap是按子映射傳遞到構造函數(shù)的順序來搜索這些子映射。

以上就是python ChainMap管理用法實例講解的詳細內(nèi)容,更多關于python ChainMap的管理用法的資料請關注好吧啦網(wǎng)其它相關文章!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 凤翔县| 莱阳市| 布尔津县| 武宁县| 临漳县| 绥化市| 乐陵市| 侯马市| 阿拉善左旗| 大同市| 抚顺市| 大冶市| 怀远县| 桂林市| 平安县| 银川市| 秀山| 大洼县| 富宁县| 黎平县| 南木林县| 和平县| 淄博市| 阳曲县| 海南省| 宁强县| 中牟县| 营口市| 崇明县| 宜丰县| 绵阳市| 宜君县| 贡觉县| 普定县| 金沙县| 宿迁市| 建德市| 龙陵县| 齐河县| 聂拉木县| 渝北区|