python 的基础 学习 第六天 基础数据类型的操作方法 字典

时间:2021-07-04 17:25:14

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)