day05 python字典

day05 python   一.字典     1.dict 用{}表示, 存放的是: key:value    (开发的都知道的是键值对数据,这样说)         key: 关键字不能重复, 不可变    (什么样的数据类型可以用做key: 不可变, 唯一的数据类型, 如数字, 字符串, bool, 元组)(不可变又称为可哈希)         hash: 哈希是一种算法,              2.字典的增删改查         增 dic = {} dic['name'] = 'bajie'       #强制添加, 或强制修改 print(dic)   dic.setdefault('name','wukong')     #如果key存在则不添加, 不存在时才添加 print(dic)         删 dic.pop('name')    #需要通过key键去pop, 有返回值,返回value 的值 print(dic)   dic.popitem()   #随机删, 有返回值, 返回一个元组 print(dic)   del dic['age']      #删一个键值对 print(dic)   dic.clear()     #结果是{}, 清空一个字典 print(dic)   #dic.remove()   #字典没有这个操作         改 dic = {'name':'wukong', 'age':20}   dic['name'] = 'bajie'           #强制修改 print(dic)   dic.update({1:'1', 2:'2', 'age':100})      #和列表的extend类似, key已经存在了,就是强制修改 print(dic)   #dic.setdefault('age', 66)        #用这个改不了, 只能添加 #print(dic)         查 print(dic['name'])      #用key直接查value, 没有key 在字典中,会报错   print(dic.get('old','not found'))        #没有key时, 不报错, 返回你写的默认值(不写的时候返回 None)   print(dic.setdefault('name'))       #也可以查, 是因为, 它先去查, 然后再去确定是否操作   for item in dic:        #for 循环默认是获取字典中的key键     print(item)       3.字典的其他操作 print(dic.keys()) >>>dict_keys(['name', 'age', 1, 2])    #结果是高仿列表, 不能用index取值, 能用 for 取值   print(dic.values())     >>>dict_values(['wukong', 20])   print(dic.items()) >>>dict_items([('name', 'wukong'), ('age', 20)])          4.解构(解包) a,b = 1,2    #这个是元组 a,b = (1,2) a,b = '12'        #字符串 a,b = [1,2]        #列表 a,b = {'name':1,'age':2}    #字典 a,b = {1,2}        #集合 #a,b = 12     #单个数字不行, 因为前后的位置个数要相同, 才可以解构   print(a,b)       5.批量创建字典(几乎没人用) dic1 = {} dic2 = dic1.fromkeys([1,2,3],'abc') print(dic2) >>>{1: 'abc', 2: 'abc', 3: 'abc'}       6.字典的嵌套 dic = {     'name':'bajie',     'age':'66',     'wife':{         'name':'datang',         'age':'20'     },     'boby':[         {'name':'daxiong','age':3},         {'name':'erxiong','age':4}     ]}   print(dic['boby'][0]['age'])            
上一篇:day05_数组


下一篇:自动化学习-Day05