一、字典特性
- 通过花括号进行定义,键值对的形式存在(key :val)
- key不能重复
- 字典是无序的
二、字典创建
test_dict = {'key1':'val1','key2':'val2'}
test_dict2 = dict(a=1,b=2,c=3)
三、字典取值
- 通过key获取value(如果key不存在就会报错)
test_dict2=dict(a=1,b=2,c=3)
res = test_dict2["a"]
print(res)
- 通过字典的get方法获取value
test_dict2=dict(a=1,b=2,c=3)#创建字典
res = test_dict2.get("b")#获取存在的key
print(res)#打印
test_dict2=dict(a=1,b=2,c=3)#创建字典
res = test_dict2.get("d","121")#获取不存在的key,自定义一个返回值,不会报错
print(res)#打印
- 获取所有的key(获取到的数据类型是dict_keys不能直接取值,需要转换list)
test_dict=dict(a=1,b=2,c=3)#创建字典
res = test_dict.keys()
print(list(res))#转换成list,再打印
- 获取所有的value(获取到的数据类型是dict_values不能直接取值,需要转换list)
test_dict=dict(a=1,b=2,c=3)#创建字典
res = test_dict.values()
print(list(res))#转换成list,再打印
- 获取所有的key和value(获取到的数据类型是dict_items不能直接取值,需要转换list)
test_dict=dict(a=1,b=2,c=3)#创建字典
res = list(test_dict.items())
print(res)#打印
- 遍历key和value(使用for循环)
test_dict=dict(a=1,b=2,c=3)#创建字典
for key in test_dict:#for循环key
print(key)#打印
test_dict=dict(a=1,b=2,c=3)#创建字典
for val in test_dict.values():#for循环val
print(val)#打印
test_dict=dict(a=1,b=2,c=3)#创建字典
for key,val in test_dict.items():#for循环val,val
print(key,val)#打印
四、修改字典
- 通过key修改对应的value
test_dict=dict(a=1,b=2,c=3)#创建字典
test_dict["a"] = "test"
print(test_dict)#打印
- 添加一个键值对 setdefault
test_dict=dict(a=1,b=2,c=3)#创建字典
test_dict.setdefault('key','value')
print(test_dict)
- 合并字典 update
test_dict=dict(a=1,b=2,c=3)#创建字典
test_dict2=dict(d=4,e=5,f=6)#创建字典
test_dict.update(test_dict2)
print(test_dict)#打印
五、字典删除
- 通过key删除对应的键值对,无返回值 del
test_dict=dict(a=1,b=2,c=3)#创建字典
del test_dict["a"]
print(test_dict)
- 删除指定的key对应的键值对,返回删除的key对应的value(pop)
test_dict=dict(a=1,b=2,c=3)#创建字典
res = test_dict.pop('a')
print(res)
- 随机删除一个键值对(popitem)
test_dict=dict(a=1,b=2,c=3)#创建字典
res = test_dict.popitem()
print(res)
print(test_dict)
- 清空字典(clear)
test_dict=dict(a=1,b=2,c=3)#创建字典
test_dict.clear()
print(test_dict)
六、字典排序
import operator
test_dict=dict(b=2,a=1,c=3)#创建字典
res = sorted(test_dict.items(),key=operator.itemgetter(1))
print(dict(res))
欢迎来到testingpai.com!
注册 关于