Python中的字典dict是一組無序鍵值對的集合,其中每一個鍵的值都是獨一無二的
>>>data = {1:"a", 2:'b', 3:'c', 4:'d'}
>>>data
{1: 'a', 2: 'b',3: 'c', 4: 'd'}
>>>data[2]
'b'
新建dict方法如下,使用{}和value:value的形式新建,可以使用{}來新建空字典
創建新的字典的值只要使用以下的方法就行
>>>data[5] = 'e'
>>>data
{1: 'a', 2: 'b',3: 'c', 4: 'd', 5: 'e'}
使用del來刪除字典中指定的鍵值對,使用in來查詢某個鍵是否在字典中,這一點和set集合非常的類似
>>> a ={1: 'a',2:'b', 3:'c', 4:'d', 5:'e'}
>>> dela[3]
>>> a
{1: 'a', 2: 'b',4: 'd', 5: 'e'}
>>> 2in a
True
>>> 100in a
False
字典的鍵不能是序列類型,只能是值,可以從成對的元組創建字典
>>>dict(((1, 2), (3, 4) , (5, 6)))
{1: 2, 3: 4, 5:6}
如果想要遍歷字典,可以使用字典的items方法,返回的是字典裏面的鍵值對組成的元組
>>> forx, y in data.items():
... x, y
...
(1, 'a')
(2, 'b')
(3, 'c')
(4, 'd')
(5, 'e')
當你打算向字典裏面插入某個鍵值對,當這個鍵值對不存在的時候才插入,可以使用setdefault(key,value)方法,當指定的鍵不存在的時候插入鍵值對,當存在的時候返回查詢到的value值
下面的這種方法data.setdefault('name',[]).append('rubt')指的是當’name’不存在的時候插入空序列並且返回這個序列,然後向這個序列裏面添加‘rubt’,在這個地方說明了python的序列具有某些C++指針的特性
>>> data = {}
>>>data.setdefault('name',[]).append('rubt')
>>> data
{'name': ['rubt']}
>>> data.setdefault('name',124)
['rubt']
>>>
當索引一個不存在的鍵值的時候會報錯,這個時候使用get方法,當指定鍵值不存在的時候返回設定的默認的值
>>> data[123]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
KeyError: 123
>>> data.get(123,321)
321
>>>