字典是可迭代对象,可存储任意类型对象,键值对(key:value)表示 不允许同一个键出现两次 键必须不可变为不可迭代对象,所以可以用数字,字符串或元组,列表不可以
修改 增加
dictname[key] = value
del方法
能删字典内指定的键值对元素,也能彻底删除字典本身
>>> a = {'name': 'li','sex':'male'} >>> del a['name'] # 删除字典中键值对name >>> print(a) {'sex':'male'} >>> del a # 删除字典a >>> print(a) Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name 'a' is not defined dict.clear() 清空字典内容,剩余空字典 >>> a = {'name': 'li','sex':'male'} >>> print(a) {} dict.pop() 与列表pop方法类似,因为字典是无序的,所以dict.pop()方法需给出要删除的键 >>> a = {'name': 'li','sex':'male'} >>> b = a.pop('name') >>> b 'li' >>> a {'sex': 'male'} dict.popitem()与pop方法不同,popitem不需要参数,效果为随机删除字典中键值,并返回删除的键值
>>> a = {'name': 'li','sex':'male'} >>> b = a.popitem() >>> b ('sex':'male') >>> a {'name': 'li'} dict.keys()以列表形式返回字典所有键
>>> a = {'name': 'li','sex':'male'} >>> a.keys() dict_keys(['name','sex']) dict.values() 以列表形式返回字典所有值 >>> a = {'name': 'li','sex':'male'} >>> a.values() dict_values(['li','male']) dict.items() 以列表返回可遍历的键值对元组数组,形式(key,value) >>> a = {'name': 'li','sex':'male'} >>> a.items() dict_items([('sex', 'male'), ('name', 'li')]) dict.fromkeys(tuple,value) 以元祖为key,value为对应值创建一个字典 >>> a = ('a','b','v') >>> b= dict.fromkeys(a,10) >>> b {'v': 10, 'a': 10, 'b': 10}dict.copy()
与列表方法相同,对字典进行一个浅复制, 当值为不可迭代对象时,可生成一个副本,互不干涉 当值为可迭代对象如字典,列表时,会互相影响
copy.deepcopy(dict)
与列表方法相同,进行一个深复制,产生一个独立的副本字典