欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

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

說明

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

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

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

當(dāng)Python搜索名稱時(shí),它會(huì)依次搜索當(dāng)?shù)?、全局和?nèi)置的功能域,直到找到目標(biāo)名稱。Python作用域是將名稱映射到對(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類管理的是一個(gè)字典序列,并按其出現(xiàn)的順序搜索以查找與鍵關(guān)聯(lián)的值。ChainMap提供了一個(gè)很好的“上下文”容器,因此可以把它看成一個(gè)棧,棧增長時(shí)發(fā)生變更,棧收縮時(shí)這些變更被丟棄。

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

import collections

a = {"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是按子映射傳遞到構(gòu)造函數(shù)的順序來搜索這些子映射。

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

相關(guān)文章

  • 使用Python和大模型進(jìn)行數(shù)據(jù)分析和文本生成

    使用Python和大模型進(jìn)行數(shù)據(jù)分析和文本生成

    Python語言以其簡(jiǎn)潔和強(qiáng)大的特性,成為了數(shù)據(jù)科學(xué)、機(jī)器學(xué)習(xí)和人工智能開發(fā)的首選語言之一,在這篇文章中,我將介紹如何用Python連接和使用大模型,并通過示例展示如何在實(shí)際項(xiàng)目中應(yīng)用這些技術(shù),需要的朋友可以參考下
    2024-05-05
  • python連接mongodb集群方法詳解

    python連接mongodb集群方法詳解

    這篇文章主要介紹了python連接mongo集群方法詳解,需要的朋友可以參考下
    2020-02-02
  • Django提高查詢速度的9種方法總結(jié)

    Django提高查詢速度的9種方法總結(jié)

    Django作為一個(gè)高度可擴(kuò)展的Web框架,提供了多種方式來優(yōu)化數(shù)據(jù)庫查詢,本文將介紹一些常用的Django數(shù)據(jù)庫查詢優(yōu)化技巧,需要的可以參考一下
    2023-07-07
  • python怎么判斷模塊安裝完成

    python怎么判斷模塊安裝完成

    在本篇內(nèi)容里小編給大家分享的是關(guān)于python如何判斷模塊是否安裝的技術(shù)文章,有興趣的朋友們可以參考下。
    2020-06-06
  • Python實(shí)現(xiàn)如何根據(jù)文件后綴進(jìn)行分類

    Python實(shí)現(xiàn)如何根據(jù)文件后綴進(jìn)行分類

    本文主要為大家詳細(xì)介紹了如何通過python實(shí)現(xiàn)根據(jù)文件后綴實(shí)現(xiàn)分類,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以關(guān)注一下
    2021-12-12
  • python 使用MyQR和qrcode來制作二維碼

    python 使用MyQR和qrcode來制作二維碼

    這篇文章主要介紹了python 如何使用MyQR和qrcode來制作二維碼,幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下
    2021-05-05
  • yolov5模型配置yaml文件詳細(xì)講解

    yolov5模型配置yaml文件詳細(xì)講解

    YOLOV5模型配置文件存放在modules文件夾下,這里使用的是 yolov5s.yaml,下面這篇文章主要給大家介紹了關(guān)于yolov5模型配置yaml文件的相關(guān)資料,需要的朋友可以參考下
    2022-09-09
  • Django零基礎(chǔ)入門之運(yùn)行Django版的hello world

    Django零基礎(chǔ)入門之運(yùn)行Django版的hello world

    這篇文章主要介紹了Django零基礎(chǔ)入門之運(yùn)行Django版的hello world,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-09-09
  • Python去除、替換字符串空格的處理方法

    Python去除、替換字符串空格的處理方法

    這篇文章主要介紹了Python去除、替換字符串空格的處理方法,去除字符串空格有兩種方法,一種是 .replace(' old ',' new '),第二種方法也很簡(jiǎn)單,需要的朋友可以參考下
    2018-04-04
  • Python 中PyQt5 點(diǎn)擊主窗口彈出另一個(gè)窗口的實(shí)現(xiàn)方法

    Python 中PyQt5 點(diǎn)擊主窗口彈出另一個(gè)窗口的實(shí)現(xiàn)方法

    這篇文章主要介紹了Python 中PyQt5 點(diǎn)擊主窗口彈出另一個(gè)窗口的實(shí)現(xiàn)方法,本文代碼實(shí)例圖文相結(jié)合的形式給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-07-07

最新評(píng)論