字典
相关函数
len()
返回列表元素个数。
vard = {'a':1,'b':2}
print(len(vard))
# 2
str() & type()
强制转换为字符串
查询数据类型
vard = {'a': 1 ,'b':2}
res = str(vard)
print(res,type(res))
# {'a': 1, 'b': 2} <class 'str'>
dict.clear()
用于删除字典内所有元素。
vard = {'a': 1 ,'b':2}
vard.clear()
print(vard)
# {}
dict.copy()
返回一个字典的浅复制。
vard = {'a': 1 ,'b':2,'c':[1,2,3]}
vard1 = vard.copy()
print(vard1)
vard['c'].remove(1)
print(vard)
print(vard1)
# {'a': 1, 'b': 2, 'c': [1, 2, 3]}
# {'a': 1, 'b': 2, 'c': [2, 3]}
# {'a': 1, 'b': 2, 'c': [2, 3]}
dict.fromkeys(seq[,value])
创建一个新字典,以序列 seq 中元素做字典的键,value 为字典所有键对应的初始值。
seq = ['a','b']
dict = dict.fromkeys(seq,2)
print(res)
# {'a': 2, 'b': 2}
dict.get(key,default=None)
返回指定键的值,如果值不在字典中返回默认值。
vard = {'a': 1 ,'b':2,'c':[1,2,3]}
print(vard.get('c'))
print(vard.get('d',0))
# [1, 2, 3]
# 0
in & not in
判断键是否存在于字典中,在,返回 true,否则返回 false。
操作符刚好相反
vard = {'a': 1 ,'b':2,'c':[1,2,3]}
print('c' in vard)
print('d' in vard)
print(1 in vard)
# True
# False
# False
dict.items()
以列表形式返回可遍历的(键, 值) 元组数组。
vard = {'a': 1 ,'b':2,'c':[1,2,3]}
print(vard.items())
# dict_items([('a', 1), ('b', 2), ('c', [1, 2, 3])])
dict.keys()
返回一个可迭代对象,可以使用 list() 来转换为列表。
vard = {'a': 1 ,'b':2,'c':[1,2,3]}
print(vard.keys())
print(list(vard.keys()))
# dict_keys(['a', 'b', 'c'])
# ['a', 'b', 'c']
dict.update(dict1)
把字典参数 dict1 的 key/value(键/值) 对更新到字典 dict 里。
vard = {'a': 1 ,'b':2,'c':[1,2,3]}
vard1 = {'a':2 ,'d':4}
vard1.update(vard)
print(vard)
print(vard1)
# {'a': 1, 'b': 2, 'c': [1, 2, 3]}
# {'a': 1, 'd': 4, 'b': 2, 'c': [1, 2, 3]}
dict.values()
返回一个迭代器,为字典中的所有值。
vard = {'a': 1 ,'b':2,'c':[1,2,3]}
print(vard.values(),type(vard.values()))
print(list(vard.values()))
# dict_values([1, 2, [1, 2, 3]]) <class 'dict_values'>
# [1, 2, [1, 2, 3]]
dict.popitem()
随机返回并删除字典中的最后一对键和值,LIFO:后进先出。空字典调用时报错
vard = {'a': 1 ,'b':2,'c':[1,2,3]}
print(vard.popitem())
print(vard.popitem())
print(vard.popitem())
print(vard)
print(vard.popitem())
# ('c', [1, 2, 3])
# ('b', 2)
# ('a', 1)
# {}
# KeyError: 'popitem(): dictionary is empty'
iter(dict)
返回以字典的key为元素的迭代器
dict = {'a':1,'b':2}
print(iter(dict))
print(list(iter(dict)))
# <dict_keyiterator object at 0x000002BD87E6D818>
# ['a', 'b']
dict.setdefault()
返回以字典的key为元素的迭代器
dict = {'a':1,'b':2}
print(dict.setdefault(3))
print(dict.setdefault('a'))
print(dict.setdefault(1,2))
print(dict)
# None
# 1
# 2
# {'a': 1, 'b': 2, 3: None, 1: 2}