1,字典
字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据。python对key进行哈希函数运算,根据计算的结果决定value的存储地址,所以字典是无序存储的,且key必须是可哈希的。可哈希表示key必须是不可变类型,如:数字、字符串、元组。
字典(dictionary)是除列表意外python之中最灵活的内置数据结构类型。列表是有序的对象结合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。
字典所有的操作都是通过键 key操作的
1,增
第一种,[ ]有则覆盖,无则添加。
dic={'name':'gonn','jin':'jilo'}
dic['hobby']='girl'
dic['name'] ='jinxin'
print(dic)
第二种,setdefault,无则添加,有则不变
dic={'name':'gonn','jin':'jilo'}
dic.setdefault('hobby','girl')
dic.setdefault('name','li')
print(dic)
2,删除,pop,,,clear,,del
dic={'name':'gonn','jin':'jilo'}
print(dic.pop('jo',None))#删除都是通过键删除,有返回值
#打印你返回你设定的值,如果没有这个键会报错。一般加 None
print(dic)
dic={'name':'gonn','jin':'jilo'}
print(dic.popitem())#随机删除
dic={'name':'gonn','jin':'jilo'}
#dic.clear()#清空列表
#del dic#清空列表
del dic['name']#通过键删除
print(dic)
3,改
dic = {'name':'yu','age':''}
# dic['name']='jinjin'
dic1 = {'ww':'nami','lll':'ee'}
dic.update(dic1)#将dic1的键值对添加到dic
print(dic)
4,查
通过键查
dic={'name':'gonn','jin':'jilo'}
# print(dic['name'])
# print(dic.get('name'))
print(dic.get('yu'))#单个查询用get,没有返回None,也可以设置
5,其他方法,keys, values, items
keys把所有的键放在一个类似列表中。
values把所有的值放在一个类似列表中。
items把所有的键值放在一个类似列表中
dic={'name':'gonn','jin':'jilo'}
for i in dic.keys():
for i in dic.values():
for i in dic.items():
print(i)
特殊类型dict转换成 list print(list(keys()))
6,分别赋值
a=4
b=5
a,b=b,a
print(a,b)
dic={'name':'gonn','jin':'jilo'}
for a,b in dic.items():
print(a,b)#a,b分别赋值
补全如下代码 li = [11,22,33,44,55,77,88,99,90],把大于66的放进key1中,把小于66的放进key2中
result = {}
for row in li:
li = [11,22,33,44,55,77,88,99,90]
result = {}
for row in li:
if row >66:
if 'key1'not in result:
result['key1'] = []
result['key1'].append(row)
if row <66:
if 'key2'not in result:
result['key2']= []
result['key2'].append(row)
print(result)