Python update 函數 - Python零基礎入門教程


目錄

零基礎 Python 學習路線推薦 : Python 學習目錄 >> Python 基礎入門

在前一篇文章 **Python ChainMap **中我們介紹了關於 Python 內置函數 ChainMap 使用,ChainMap 函數和 update 函數類似,都是對字典 dict 操作,也是將多個字典 dict 合並,那么問題來了?ChainMap 和 update 兩者區別在哪呢?

一.Python update 函數簡介

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

# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:猿說編程
@Blog(個人博客地址): www.codersrc.com
@File:Python update 函數.py
@Time:2021/04/04 11:00
@Motto:不積跬步無以至千里,不積小流無以成江海,程序人生的精彩需要堅持不懈地積累!

"""

dict1= {"a":"zhangsan","b":"lisi"}
dict2= {"c":"wangwu"}

# 合並字典

dict2.update(dict1)

print(dict2)

'''
輸出結果:

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

二.Python update 函數和 ChainMap 函數區別

1.內置函數 ChainMap 函數對多個字典合並時,合並的結果內存地址並沒有發生改變當我們修改 ChainMap 函數返回的結果時,會發現原始字典 dict 的數據也會發生相同的變化;當我修改原始字典時,ChainMap 函數返回的結果也會跟隨一起變化,這也意味着:ChainMap 函數返回的結果和原始字典共用一塊內存地址

# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:猿說編程
@Blog(個人博客地址): www.codersrc.com
@File:Python update 函數.py
@Time:2021/04/04 11:00
@Motto:不積跬步無以至千里,不積小流無以成江海,程序人生的精彩需要堅持不懈地積累!

"""

from collections import ChainMap

dict1= {"a":"zhangsan","b":"lisi"}
dict2= {"c":"wangwu"}

# 合並字典
new_dict = ChainMap(dict1,dict2)
print(new_dict)

print("***"*20)
# 修改數據
new_dict.maps[0]["a"] = "123"
print(new_dict)
print(dict1)
'''
輸出結果:

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

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

3.ChainMap 函數可以同時合並多個字典,update 函數每次只能合並一個字典!

三.猜你喜歡

  1. Python 字符串/列表/元組/字典之間的相互轉換
  2. Python 局部變量和全局變量
  3. Python type 函數和 isinstance 函數區別
  4. Python is 和 == 區別
  5. Python 可變數據類型和不可變數據類型
  6. Python 淺拷貝和深拷貝
  7. Python 遞歸函數
  8. Python sys 模塊
  9. Python 列表 list
  10. Python 元組 tuple
  11. Python 字典 dict
  12. Python 條件推導式
  13. Python 列表推導式
  14. Python 字典推導式
  15. Python 函數聲明和調用
  16. Python 不定長參數 *argc/**kargcs

未經允許不得轉載:猿說編程 » Python update 函數

本文由博客 - 猿說編程 猿說編程 發布!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM