python中更新字典对象

作者: My熊猫眼 | 来源:发表于2020-04-23 20:58 被阅读0次

最近用python做了一个小工具,涉及到如下的字典操作,特做笔记如下:
1. 用update方法更新字典:
用字典的update方法,这时候传递给update的必须是一个字典.

>>> d={}
>>> d.update({"key":123})
>>> d
{'key': 123}
>>> 
>>> n_d={"name":"testid"}
>>> d.update(n_d)
>>> d
{'name': 'testid', 'key': 123}
>>> 

2. 用赋值的方式进行更新:
上述update的方式进行字典更新,那么key必须是字符串,很多情况下,我们需要字典的key 和value都是变量(典型的把变量以及值存储到字典中),这时候用赋值的方式实现:

>>> d={}
>>> name="xiongmao"
>>> age=3
>>> d[name]=age
>>> d
{'xiongmao': 3}
>>> 

3. 多层字典的更新:
在实际的使用过程中,会遇到多重字典的情况(比如处理json格式的数据),这时候更新字典的时候,会看起来比较麻烦,下面是一个更新多重字典的函数例子:

#在这个例子当中,多重字典hostvardict 的更新遵循下面的原则: 
#A. 确认多重字典需要更新的部分,然后进行划分,同等level的部分看作一个变量,所以在下面的例子中,是两个变量.
#B. 每次调用字典对象update方法的时候,只更新其中一个变量,这样更清晰,所以在下面的例子中,一共调用了字典的两次update方法.
#C.  传入进来的字典用一个空字典,然后用try...except进行赋值处理;
#D. 更新完成,返回字典对象;
#hostname type should be string.
#hostvar type should be dict, the hostvar should not be empty. 
#hostvardict type is dict, just pass the empty dict  to this parameter . 
def hostvarformat(hostname,hostvar,hostvardict):
    try:
        hostvardict["_meta"]["hostvars"]  #It always trigger expect for 1st calling. 
    except:
        hostvardict={"_meta":{"hostvars":{}}}   #Create the dict first .
    hostvardict["_meta"]["hostvars"].update({hostname:{}})   #Update the dict with hostname.
    hostvardict["_meta"]["hostvars"][hostname].update(hostvar)     #Update the dict with sub dict hostvar. 
    return hostvardict   #Return the updated dict . 

遵照上述的原则,对于多重字典的更新应该也很容易理解了。

本文原创,转载请著名出处.

相关文章

  • python中更新字典对象

    最近用python做了一个小工具,涉及到如下的字典操作,特做笔记如下:1. 用update方法更新字典:用字典的u...

  • 关于class的数据传递

    python不同的字典或类中数据的更新方式 如上所示,class B的对象当中引入了classA的对象, 当对象d...

  • Python中的字典

    Python中的字典就是JavaScript中的对象创建字典 访问字典中的值 使用len()方法获取字典中键值对的...

  • 第六章 字典

    6.2 使用字典 在Python中,字典是一系列键值对,任何Python对象都可用作字典的值Pyhone字典用花括...

  • Python 中常见的数据结构:字典、映射和散列表

    在 Python 中,字典是核心数据结构。字典可以存储任意数量的对象,每个对象都由唯一的字典键标识。 字典通常也被...

  • 字典的创建及操作方法

    1、字典的特点 字典:是python中的无序的对象集合。字典与列表的区别是:字典中的数据是无序的,而且字典中的元素...

  • python字典与集合

    python字典 特点: python中唯一的映射类型就是字典。 在映射类型对象里,hash值(key)和指向的对...

  • Python札记6_字典1

    Python中存在一种叫做字典dictionary的对象类型,用dict表示,字典中的元素用{ }括起来,字典是无...

  • python 字典

    1python 中字典对象 在编程中,我们常会谈及到键值对这个概念。这个在C++中是结构体在python中是字典对...

  • 2018-11-21

    3.6) 字典类型:dict 字典dict 是python中唯一的映射类型(哈希表) 字典对象是可变的,但key是...

网友评论

    本文标题:python中更新字典对象

    本文链接:https://www.haomeiwen.com/subject/zxiaihtx.html