Python 字典方法

继上文”字典简介”后,本文继续介绍字典的常用方法。

1 Clear

clear方法可以清除字典里所有的项,这是个原地操作(类似于list.sort),所以无返回值(或者说返回值为None)。示例代码如下:

1
2
3
4
5
6
7
8
9
10
>>> my_dict = {}
>>> my_dict['name'] = 'Oythonhill'
>>> my_dict['age'] = 22
>>> my_dict
{'age': 22, 'name': 'Oythonhill'}
>>> returned_value = my_dict.clear()
>>> my_dict
{}
>>> print(returned_value)
None

2 Copy

copy方法返回一个具有相同键值对的新字典(浅复制),示例代码如下:

1
2
3
4
5
>>> x = {'author': 'oythonhill', 'location': 'beijing'}
>>> y = x.copy()
>>> y['author'] = 'pythonhill'
>>> y['location'] = 'shanghai'
>>> y

mydict.copy()

copy方法返回mydict的地址副本(Shallow copy),如果替换了地址副本中值的地址,新旧dict间不会产生影响,但如果对地址副本中地址对应的值作直接修改,则会同时影响新旧dict,其影响可以用deep copy的方法来避免

3 Fromkeys

4 Get

mydict.get(key,default=?)

get方法可以用来访问给定键对应的值,若给定键不存在,则会返回默认值。

5 setdefault

Setdefault

mydict.setdefault(key=,values=None)

若给定键存在,返回给定键对应的值,若给定键不存在,返回默认值,并根据给定键和默认值更新字典。

6 Items和Iteritems

返回一个列表,元素为元组,每个元祖包含一个键和该键的值,示例代码如下:

1
2
3
>>> dict = {'author': 'oythonhill', 'location': 'beijing'}
>>> dict.items()
[('author','oythonhill'), ('location','beijing')]

iteritems方法的作用大致相同,但是会返回一个迭代器对象。

7 Keys和Iterkeys

keys方法返回一个列表,包含字典所有的键;

iterkeys方法类似,但返回的是一个迭代器。

8 Values和Itervalues

vlaues方法返回一个列表,包含字典的所有值;

itervalues方法类似,返回的是一个迭代器。

9 Pop和Popitem

  • pop方法用来获得对应于给定键的值,然后将这个键值对从字典中删除,示例代码如下:

    1
    2
    3
    4
    5
    >>> dict = {'x': 1, 'y': '2'}
    >>> d.pop('x')
    1
    >>> dict
    {'y': '2'}
  • popitem方法会从字典中随机弹出一项(键值对),类似于list.pop,但list.pop是有序的,popitem是随机的,示例代码如下:

    1
    2
    3
    4
    5
    >>> dict = {'x': 1, 'y': '2', 'z': '3'}
    >>> dict.popitem()
    ('y', '2')
    >>> dict
    {'x': 1, 'z': '3'}
Spark Streaming基础总结
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×