一.数据类型划分:
不可变数据类型:元组,bool,int,str -- 可哈希
可变数据类型: list ,dict ,set -- 不可哈希
二.字典:(映射数据类型)
字典 -- 键值对类型:键为不可变数据类型,值可为任意数据类型
字典优点:二分法查找,速度快
缺点:无序(python3.5及之前),占空间相对大
dic = {'name':'张三', 'age':18,'gender':'man','job':'IT'}
1.增:
dic['hobby'] = ['basketball','football']
dic.setdefault('newKey',default='new')
{'name': '张三', 'age': 18, 'gender': 'man', 'job': 'IT', 'hobby': ['basketball', 'football'], 'newKey': None}
dic.setdefault('name','李四')
{'name': '张三', 'age': 18, 'gender': 'man', 'job': 'IT', 'hobby': ['basketball', 'football'], 'newKey': None}
setdefault方法只能新增没有的键值对,不能修改
2.删:
pop(k,[d]) 返回指定k对应的值,给定d后没有找到时返回d,否则人抛出异常
popitem() 返回元组类型键值对
clear() 清空字典
del dic 删除字典
3.改:
dic['name'] = '李四'
dic2 = {'name':'王五',1:'a',2:'b',3:'c'}
dic2.update(dic) 将dic覆盖添加到dic2中
4.查:
dic.keys() --> dict_keys(['name', 'age', 'gender', 'job'])
获取字典键
dic.values() --> dict_values(['张三', 18, 'man', 'IT'])
获取字典值
dic.items() --> dict_items([('name', '张三'), ('age', 18), ('gender', 'man'), ('job', 'IT')])
获取字段键值对