最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python ChainMap管理用法實(shí)例講解

 更新時(shí)間:2021年08月18日 08:41:00   作者:小妮淺淺  
在本篇文章里小編給大家整理一篇關(guān)于python ChainMap的管理用法及相關(guān)實(shí)例,有需要的朋友們可以學(xué)參考下。

說(shuō)明

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

2、當(dāng)有多個(gè)存儲(chǔ)重復(fù)鍵的字典訪問(wèn)它們的順序時(shí),這個(gè)功能非常有用。

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

當(dāng)Python搜索名稱(chēng)時(shí),它會(huì)依次搜索當(dāng)?shù)?、全局和?nèi)置的功能域,直到找到目標(biāo)名稱(chēng)。Python作用域是將名稱(chēng)映射到對(duì)象的字典。

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

實(shí)例

>>> 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>

知識(shí)點(diǎn)擴(kuò)展:

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

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

import collections

a = {"a": "A", "c": "c", }
b = {"b": "B", "c": "D", }

col = collections.ChainMap(a, b)
# 和普通字典一樣訪問(wèn)
print(col["a"])
print(list(col.keys()), list(col.values()))

for key, value in col.items():
    print(key, value)

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

以上就是python ChainMap管理用法實(shí)例講解的詳細(xì)內(nèi)容,更多關(guān)于python ChainMap的管理用法的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評(píng)論

乌鲁木齐市| 定安县| 睢宁县| 莫力| 平潭县| 沙河市| 内丘县| 兰坪| 策勒县| 鹤庆县| 贡嘎县| 陆川县| 鄂托克旗| 郓城县| 日照市| 合肥市| 高阳县| 沅陵县| 内丘县| 漳浦县| 基隆市| 文登市| 平利县| 永修县| 长顺县| 多伦县| 莱州市| 上林县| 弥渡县| 盐山县| 土默特右旗| 民和| 安新县| 西乌珠穆沁旗| 柯坪县| 湘西| 娄烦县| 洪泽县| 福建省| 涡阳县| 临海市|