python中ChainMap和update兩者區(qū)別在哪?-創(chuàng)新互聯(lián)

ChainMap和update兩者區(qū)別在哪呢?

專注于為中小企業(yè)提供成都做網(wǎng)站、網(wǎng)站建設、外貿(mào)營銷網(wǎng)站建設服務,電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)吉州免費做網(wǎng)站提供優(yōu)質(zhì)的服務。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了超過千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設實現(xiàn)規(guī)模擴充和轉(zhuǎn)變。

一.update簡介

python 字典(Dictionary) update() 函數(shù)把字典dict的鍵/值對更新到另外一個dict里。

dict1={"a":"zhangsan","b":"lisi"}

dict2={"c":"wangwu"}

# 合并字典

dict2.update(dict1)

print(dict2)

1

2

3

4

5

6

7

輸出結(jié)果:

{'c':'wangwu','a':'zhangsan','b':'lisi'}

1

二.update和ChainMap區(qū)別

1.內(nèi)置函數(shù)ChainMap函數(shù)對多個字典合并時,合并的結(jié)果內(nèi)存地址并沒有發(fā)生改變,當我們修改ChainMap函數(shù)返回的結(jié)果時,會發(fā)現(xiàn)原始字典的數(shù)據(jù)也會發(fā)生相同的變化;當我修改原始字典時,ChainMap函數(shù)返回的結(jié)果也會跟隨一起變化,這也意味著:ChainMap函數(shù)返回的結(jié)果和原始字典共用一塊內(nèi)存地址。

# !usr/bin/env python

# -*- coding:utf-8 _*-

"""

@Author:何以解憂

@Blog(個人博客地址): shuopython.com

@WeChat Official Account(微信公眾號):猿說python

@Github:www.github.com

@File:python_chainmap.py

@Time:2019/11/22 21:25

@Motto:不積跬步無以至千里,不積小流無以成江海,程序人生的精彩需要堅持不懈地積累!

"""

fromcollectionsimportChainMap

dict1={"a":"zhangsan","b":"lisi"}

dict2={"c":"wangwu"}

# 合并字典

new_dict=ChainMap(dict1,dict2)

print(new_dict)

print("***"*20)

# 修改數(shù)據(jù)

new_dict.maps[0]["a"]="123"

print(new_dict)

print(dict1)

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

輸出結(jié)果:

ChainMap({'a':'zhangsan','b':'lisi'},{'c':'wangwu'})

************************************************************

ChainMap({'a':'123','b':'lisi'},{'c':'wangwu'})

{'a':'123','b':'lisi'}

1

2

3

4

2.update函數(shù)將原始字典dict的鍵/值對更新到另外一個目標dict里,合并之后原始字典dict和目標字典都是獨立的內(nèi)存塊,兩者互不影響!

3.ChainMap函數(shù)可以同時合并多個字典,update函數(shù)每次只能合并一個字典!

另外有需要云服務器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。

名稱欄目:python中ChainMap和update兩者區(qū)別在哪?-創(chuàng)新互聯(lián)
分享網(wǎng)址:http://bm7419.com/article30/dihoso.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設、動態(tài)網(wǎng)站商城網(wǎng)站、響應式網(wǎng)站、電子商務網(wǎng)站建設

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名