#1. 字典的声明方式
dict0 = dict() #创建出来的是空字典 {}
dict0 = dict({"A":15, "B":17})
#如果传递序列 传递的是嵌套的序列
dict0 = dict([[12, 34],[22, 34]])
#变量=值
dict0 = dict(姓名="雪诺", age=18)
dict0 = {"语文":87, "数学":22}
#字典没有索引
# item = dict0[0] #KeyError: 0
#获取value的方式 根据键来获取的 字典名[key]
value = dict0["数学"]
#如果key不存在 这种获取方式会报错
# value = dict0["英语"] #KeyError: '英语'
#另外一种获取方式 如果键不存在 会返回None
value = dict0.get("英语")
#设置值的方式
#修改值 前提键存在的情况下修改[新值覆盖旧值] 如果不存在会添加为新的键值对
dict0["数学"] = 45
dict0["英语"] = 60
#提供了set方法
dict0.setdefault("政治", 55)
#提供了set方法 注意: 如果键不存在与键值对中 才会将值赋予给对应键 如果存在就不会赋值了
#D.setdefault(k[,d]) -> D.get(k,d), also set D[k]=d if k not in D
dict0.setdefault("政治", 75)
#update的方法 合并字典 不会新生成一个字典 而是直接修改当前字典
dict1 = {"历史":55, "地理":78}
dict0.update(dict1)
#获得字典中键值对的个数
length = len(dict0)
#字典的遍历
#直接遍历字典 -- 遍历的是键
for k in dict0:
print(k)
#只遍历值
#获得字典中所有的值
for v in dict0.values():
print(v)
#遍历字典的键值对
#获得所有的键值对 将键和值成对存放于元组中
for k, v in dict0.items():
print(k, v)
#删除元素 : 根据键删除键值对
dict0.pop("英语")
# KeyError: '英语' 如果不存在报错
dict0.pop("英语")
#直接删除键值对 删除的是确定位置后最后一个
dict0.popitem()
#清空字典
dict0.clear()
'''
遍历字典时,不允许修改字典
'''
for k, v in dict0.items():
if v >= 60:
#dict0.pop(k) # dictionary changed size during iteration[迭代 遍历]
new_dict[k] = v
整理:字典常用操作
猜你喜欢
转载自blog.csdn.net/Mithrandir_/article/details/81394658
今日推荐
周排行