不能存在相同的键,字典中的元素是无序的
>>> d = {'a':1,'b':2,'c':3}
返回所有键值:items()
返回所有键:keys()
查看所有值:values()
>>> d.items()
dict_items([('a', 1), ('b', 2), ('c', 3)])
>>> d.keys()
dict_keys(['a', 'b', 'c'])
>>> d.values()
dict_values([1, 2, 3])
删除键值:popitem()
删除指定键:pop()
删除字典里的所有键值:clear()
添加字典到字典:update()
>>> d['e'] = 4 #添加键值
>>> d
{'a': 1, 'b': 2, 'c': 3, 'e': 4}
>>> d.popitem()
('e', 4)
>>> d
{'a': 1, 'b': 2, 'c': 3}
>>> d.pop('b') #删除指定键b及对应值
2
>>> d
{'a': 1, 'c': 3}
>>> d1 = {'q':7, 'w':8} #定义一个字典
>>> d.update(d1) #这里相当于更新,把d1的内容更新到b
>>> d
{'a': 1, 'c': 3, 'q': 7, 'w': 8}
>>> d1.clear()
>>> d1
{}
拷贝为新的字典:copy()
>>> d2 = d.copy()
>>> d2
{'a': 1, 'c': 3, 'q': 7, 'w': 8}
判断单个键的值是否存在:
1、_contains_() 返回的是bool值(True/False)
2、get() 有键值则返回键值,没有则返回默认值
>>> d
{'a': 1, 'c': 3, 'q': 7, 'w': 8}
>>> d.__contains__('a')
True
>>> d.get('a','no')
1
>>> d.get('b','no')
'no'
判断字典的键还可以用setdefault()
,与get()
相似,不同的是,使用setdefault()
时,如果字典中没有键则会添加这个键,默认值为None
>>> d.setdefault('a')
1
>>> d
{'a': 1, 'c': 3, 'q': 7, 'w': 8}
>>> d.setdefault('b')
>>> d
{'a': 1, 'c': 3, 'q': 7, 'w': 8, 'b': None}
当然如果想要指定这个键的值也可以,但是键存在的情况下原来的键值不会改变
>>> d.pop('b')
>>> d
{'a': 1, 'c': 3, 'q': 7, 'w': 8}
>>> d.setdefault('a', 2) #有a这个键只返回键值,不改变键值
1
>>> d.setdefault('b', 2) #没有b这个键则会添加,并且键值为2
2
>>> d
{'a': 1, 'c': 3, 'q': 7, 'w': 8, 'b': 2}
如果需要打印一个字典中的键值时,使用print
来一个一个打印显然不可能,可以使用for
语句结合字典迭代器来遍历打印
>>> for i in d.items(): #打印所有键值
print(i)
('a', 1)
('c', 3)
('q', 7)
('w', 8)
('b', 2)
>>> for i in d.keys(): #打印所有键
print(i)
a
c
q
w
b
>>> for i in d.values(): #打印所有值
print(i)
1
3
7
8
2
>>>