day2 字典常用的方法

    字典创建的方式:

    (1)d1 = {"k1":"v1","k2":"v2","k3":"v3"}
  (2)dic = dict(k1="v1",k2="v2",k3="v3")

    字典是由键值对组成的,keys()代表所有的键,values()代表所有对应的值,items()是所有的键值对。

    1.get(self,key,d=None)

    get(self,key,d=None)获取字典中指定键的值,get()是用来避免键不存在时候的错误,我们来看一个实例:

    >>> dic = {'k3': 'v3', 'k1': 'v1', 'k2': 'v2'}
  >>> dic["k2"]
  'v2'
  >>> dic["k4"]
  Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
  KeyError: 'k4'
    >>> a = dic.get("k4","not exit")
  >>> a
  'not exit'
    上面代码中,我们知道,如果使用dict[key]如果键key不存在,那么就会报错,KeyError,键不存在,get(self,key,d=None)就是避免这种情况出现的,我们知道,使用get()方法如果获取不到,默认返回的是None,但是我们也可以指定我们要求返回的值,上面返回的是,不存在键。

    2.pop(self,k,d=None)

    pop(self,k,d=None)我们知道,字典是无序的,因此我们删除字典中元素的时候,必须告诉字典删除那个一元素。当这个键不存在的时候,默认返回的是None,我们也可以自己指定返回值。

    >>> d1 = {'k3': 'v3', 'k1': 'v1', 'k2': 'v2'}
  >>> d1.pop("k3")
  'v3'
  >>> d1.pop("k4",666)
  666
    从上面代码可以看出,我们首先删除的是"k3",由于"k3"存在,因此删掉了键值对,接着我们删除"k4",由于"k4"不存在,我们指定了如果指定的键不存在,返回什么样的值。我们默认返回的是666.

    3.popitem(self)

    popitem(self)随机删除字典中的元素。

    >>> d1 = {'k1': 'v1', 'k2': 'v2'}
  >>> d1["k3"] = "v3"
  >>> d1.popitem()
  ('k3', 'v3')
  >>> d1.popitem()
  ('k1', 'v1')
    popitem(self)删除元素,随机删除字典中的键值对,随机的,popitem()

    4.setdefault(self,k,d=None)

    setdefault(self,k,d=None)向字典中添加元素,默认如果没有指定键的话,就把值当做None。实例如下:

    >>> d1 = {'k2': 'v2'}
  >>> d1.setdefault("k3")            (1)
  >>> d1 
  {'k3': None, 'k2': 'v2'}
  >>> d1.setdefault("k1","v1")
  'v1'
  >>> d1
  {'k3': None, 'k1': 'v1', 'k2': 'v2'}
    setdefault(self,k,d=None)是向字典中添加元素,如果没有指定值,默认为None,如上(1)处。

    5.update(self,E=None,**F)

    >>> d1 = {'k3': None, 'k1': 'v1', 'k2': 'v2'}
  >>> d1.update(k5="v5")                                                                       (1)
  >>> d1
  {'k5': 'v5', 'k3': None, 'k1': 'v1', 'k2': 'v2'}
  >>> d1.update(k6="v6",k7="v7")
  >>> d1
  {'k5': 'v5', 'k7': 'v7', 'k3': None, 'k1': 'v1', 'k6': 'v6', 'k2': 'v2'}

    >>> d1.update({"k11":"v11"})                                                                  (2)
  >>> d1
  {'k11': 'v11', 'k5': 'v5', 'k7': 'v7', 'k3': None, 'k1': 'v1', 'k6': 'v6', 'k2': 'v2'}

    上面我们使用update()方法来更新字典,其实就相当于列表中的extend()的方法,以组的形式向字典中添加元素。使用update()向字典中添加元素有两种方式,如上(1)和(2),一种是以键值对(key-value)形式进行添加,还有一种是以字典的形式进行添加(key:value)。

   



  

   

posted @ 2017-05-11 22:58  (野生程序员)  阅读(340)  评论(0编辑  收藏  举报