整理:字典常用操作

#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