dict对象的创建和使用

2020年5月8日 / 18次阅读 / Last Modified 2020年10月9日
Dict

dict是python自带的一个hash mapping type,这种对象不能通过index的方式来使用,而是要通过key的方式来使用对应的value,好处就是查询速度快。因此,dict对象内存放的数据,也都是key:value pair。

我们在代码中,可以直接使用大括号{}来创建dict对象

>>> d = {}
>>> type(d)
<class 'dict'>
>>> d = {'a':1,'b':1, 'c':1}
>>> d
{'a': 1, 'b': 1, 'c': 1}
>>> type(d)

python中的一切都是对象,那么哪些数据对象可以用来作为dict对象内数据的key呢?immutable types都可以,它们是string,number和tuple(仅含有immutable对象的tuple对象)

>>> d2 = {1:1, 2:2, 3:3}
>>> d2
{1: 1, 2: 2, 3: 3}
>>> d3 = {(1,2):'ab', (3,4):'cd', (5,6):'ef'}
>>> d3
{(1, 2): 'ab', (3, 4): 'cd', (5, 6): 'ef'}

我们可以很直接地给一个dict对象增加数据

>>> d
{'a': 1, 'b': 1, 'c': 1}
>>> d['d'] = 4
>>> d['e'] = 5
>>> d
{'a': 1, 'b': 1, 'c': 1, 'd': 4, 'e': 5}

也可以使用del来删除某一个key:value pair

>>> d
{'a': 1, 'b': 1, 'c': 1, 'd': 4, 'e': 5}
>>> del d['a']
>>> del d['b']
>>> d
{'c': 1, 'd': 4, 'e': 5}

使用dict()函数,也可以创建dict对象

>>> dict([(1,1),(2,2),(3,3)])
{1: 1, 2: 2, 3: 3}
>>> dict(((1,1),(2,2),(3,3)))
{1: 1, 2: 2, 3: 3}
>>> dict(a=1,b=2,c=3)
{'a': 1, 'b': 2, 'c': 3}

以上代码最后一组示例,对于key为string的情况,比较适合。

dict对象中的数据,有一个插入顺序留意一下。请看下面示例:

>>> d5 = {}
>>> d5['a'] = 1
>>> d5['c'] = 3
>>> d5['e'] = 5
>>> d5['b'] = 2
>>> d5['d'] = 4
>>> for k,v in d5.items():
...     print(k,v)
...
a 1
c 3
e 5
b 2
d 4
>>> list(d5)
['a', 'c', 'e', 'b', 'd']
>>> tuple(d5)
('a', 'c', 'e', 'b', 'd')

在遍历的时候,在使用list函数到处所有key值得时候,顺序都是按照插入顺序执行的!

判断某一个key值是否存在,使用in关键词:

>>> d5
{'a': 1, 'c': 3, 'e': 5, 'b': 2, 'd': 4}
>>>
>>> 'a' in d5
True
>>> 'f' in d5
False

使用len函数,可以得到dict对象的大小:

>>> d5
{'a': 1, 'c': 3, 'e': 5, 'b': 2, 'd': 4}
>>> len(d5)
5

dict对象在函数定义和调用的时候,有特别的使用方式,叫做packing或unpacking,具体参考:**kwargs参数

以上就是dict对象的基本使用方法和技巧。

-- EOF --

本文链接:https://www.pynote.net/archives/1874

留言区

电子邮件地址不会被公开。 必填项已用*标注


前一篇:
后一篇:

More


©Copyright 麦新杰 Since 2019 Python笔记

go to top