字典是另一种可变容器模型,且可存储任意类型对象
字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割。
一、创建字典
dict1 = {‘Alice‘: ‘2341‘, ‘Beth‘: ‘9102‘, ‘Cecil‘: ‘3258‘}
另外一种:
>>> dict2 = dict(abc="1") >>> dict2 {‘abc‘: ‘1‘}
二、修改字典
dict1[‘Alice‘]="1111"
结果如下:
>>> dict1 {‘Beth‘: ‘9102‘, ‘Alice‘: ‘1111‘, ‘Cecil‘: ‘3258‘}
三、增加字典中的元素
>>> dict1[‘liyuanchuan‘]="88888" >>> dict1 {‘Beth‘: ‘9102‘, ‘Alice‘: ‘1111‘, ‘liyuanchuan‘: ‘88888‘, ‘Cecil‘: ‘3258‘}
四、删除字典
1、元素删除
>>> del dict1[‘Alice‘] >>> dict1 {‘Beth‘: ‘9102‘, ‘liyuanchuan‘: ‘88888‘, ‘Cecil‘: ‘3258‘}
2、整体删除
第一种:
>>> dict1.clear() >>> dict1 {}
第二种:
>>> del dict1
五、字典特性
1、键值不允许出现两次,如果出现两次,以第一次为准。
>>> dict3 = {‘Name‘:‘liyuanchuan‘,‘age‘:‘28‘,‘Name‘:‘zhanggang‘} >>> dict3 {‘age‘: ‘28‘, ‘Name‘: ‘zhanggang‘}
2、键值不可改变,不可以用列表
>>> dict4 = {[‘Name‘]:‘liyuanchuan‘} Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: unhashable type: ‘list‘
六、字典内置函数用法
内置函数:
1、len(dict)
计算字典元数个数,即键的总数
2、str(dict)
输出的字典使用字符串表示
3、type(dict)
输出字典的类型
内置方法:
1、dict2.clear()
删除字典内所有元素
2、dict2.copy()
返回一个字典的浅复制
3、dict2.fromkeys(seq,None)
创建一个新字典,以seq中的元素做字典的键,None字典所有键对应为初始值
ep:
>>> seq2=(‘a‘,‘b‘,‘c‘,‘d‘) >>> dict4={} >>> dict4.fromkeys(seq2) {‘a‘: None, ‘c‘: None, ‘b‘: None, ‘d‘: None} >>> dict4.fromkeys(seq2,"1234") {‘a‘: ‘1234‘, ‘c‘: ‘1234‘, ‘b‘: ‘1234‘, ‘d‘: ‘1234‘} >>> dict4.fromkeys(seq2,"aaaa") {‘a‘: ‘aaaa‘, ‘c‘: ‘aaaa‘, ‘b‘: ‘aaaa‘, ‘d‘: ‘aaaa‘}
4、dict2.get(key,default=None)
返回指定键的值,如果值不在字典中返回default值
ep:
>>> dict3 {‘age‘: ‘28‘, ‘Name‘: ‘zhanggang‘} >>> dict3.get(‘height‘,175) 175
5、dict2.setdefault(key,default=None)
与上面类似,如果键值不存在,写入字典中。
ep:
>>> dict3.setdefault(‘height‘) >>> dict3 {‘age‘: ‘28‘, ‘Name‘: ‘zhanggang‘, ‘height‘: None} >>> dict3.setdefault(‘height‘,175) >>> dict3 {‘age‘: ‘28‘, ‘Name‘: ‘zhanggang‘, ‘height‘: None}
6、dict2.key(key)
判断是否存在key值,如果存在True,不存在False
>>> dict3.has_key(‘Name‘) True >>> dict3.has_key(‘Name2‘) False
7、dict2.items()
以列表返回一个字典的可遍历的(键、值)元组数组
ep:
>>> dict3.items() [(‘age‘, ‘28‘), (‘Name‘, ‘zhanggang‘), (‘height‘, None)] >>> dict3.items()[1] (‘Name‘, ‘zhanggang‘) >>> dict3.items()[1][1] ‘zhanggang‘
8、dict2.keys()
以列表的形式返回一个字典中所有键
ep:
>>> dict3.keys() [‘age‘, ‘Name‘, ‘height‘]
9、dict2.values()
以列表的形式返回一个字典中的所有值
ep:
>>> dict3.values() [‘28‘, ‘zhanggang‘, None]
时间: 2024-10-15 14:42:37