zoukankan      html  css  js  c++  java
  • 09 字典操作

    dic = {
        'name':['',''],
        'py9':[{'num':71,'avg_age':18},
               {'num': 71, 'avg_age': 18},
               {'num': 71, 'avg_age': 18}
               ],
        True: 1,
        (1,2,3):'sdlfljsdf',
        2:'二哥'
    }
    print(dic)
    #增加
    dic1 = {'age':18,'name':'jin','sex':'male',}
    dic1['hight'] = 185     #没有就增加
    print(dic1)     #{'age': 18, 'name': 'jin', 'sex': 'male', 'hight': 185}
    dic1['age'] = 16        #有就覆盖
    print(dic1)     #{'age': 16, 'name': 'jin', 'sex': 'male', 'hight': 185}
    dic1 = {'age':18,'name':'jin','sex':'male',}
    dic1.setdefault('weight')   #没有就增加
    print(dic1)     #{'age': 18, 'name': 'jin', 'sex': 'male', 'weight': None}
    dic1 = {'age':18,'name':'jin','sex':'male',}
    dic1.setdefault('weight',150)   #没有就增加
    print(dic1)     #{'age': 18, 'name': 'jin', 'sex': 'male', 'weight': 150}
    dic1 = {'age':18,'name':'jin','sex':'male',}
    dic1.setdefault('name','大一')    #有不改变
    print(dic1)     #{'age': 18, 'name': 'jin', 'sex': 'male'}
    #删除
    dic1 = {'age':18,'name':'jin','sex':'male',}
    print(dic1.pop('age')) #有返回值 18,如果没有此键就会报错
    print(dic1)     #{'name': 'jin', 'sex': 'male'}
    dic1 = {'age':18,'name':'jin','sex':'male',}
    print(dic1.pop('二哥',None)) #如果没有此键不报错
    print(dic1.pop('二哥','没有此键')) #如果没有此键就显示"没有此键",可油设置返回值
    print(dic1)     #{'name': 'jin', 'sex': 'male'}
    
    dic1 = {'age':18,'name':'jin','sex':'male',}
    print(dic1.popitem())  #随机删除  返回一个元组('sex', 'male')
    print(dic1)     #{'age': 18, 'name': 'jin'}
    dic1.clear()    #清空字典
    del dic1        #删除字典
    #更改 更新
    #更改  update
    dic1 = {'age':18,'name':'jin','sex':'male',}
    dic1['age'] = 16
    print(dic1)     #{'age': 16, 'name': 'jin', 'sex': 'male'}
    #更新
    dic = {'name':'jin','age':18,'sex':'male'}
    dic2 = {'name':'alex','weight':75}
    dic2.update(dic)    #在dic2中,有与dic相同的就更新,没有就增加
    print(dic2)     #{'name': 'jin', 'weight': 75, 'age': 18, 'sex': 'male'}
    #查找
    dic1 = {'age':18,'name':'jin','sex':'male',}
    print(dic1.keys(),type(dic1.keys()))    #键dict_keys(['age', 'name', 'sex']) <class 'dict_keys'>
    print(dic1.values())        #值dict_values([18, 'jin', 'male'])
    print(dic1.items())         #dict_items([('age', 18), ('name', 'jin'), ('sex', 'male')])
    
    for i in dic1:
        print(i)        #打印的键
    # age
    # name
    # sex
    for i in dic1.keys():
        print(i)        #打印的键(同上)
    for i in dic1.values():
        print(i)        #打印的值
    # 18
    # jin
    # male
    for i in dic1.items():
        print(i)        #打印元组
    # ('age', 18)
    # ('name', 'jin')
    # ('sex', 'male')
    for i,j in dic1.items():
        print(i,j)        #打印
    # age 18
    # name jin
    # sex male
    print(dic1['name'])     #jin
    print(dic1.get('name1'))    #None
    print(dic1.get('name1','没有这个键'))    #没有这个键
    #知识点:
    a = 1
    b = 2
    a,b = b,a
    print(a,b)      #2 1
    a,b = [1,2]
    print(a,b)      #1 2
    a,b = [1,2],[3,4,5]
    print(a,b)      #[1, 2] [3, 4, 5]
    a,b = (1,2)
    print(a,b)      #1 2
  • 相关阅读:
    浅析PostgreSQL的 ON CONFLICT 和 upsert:不存在则插入/存在则更新、upsert 介绍、语法及示例
    常见工作场景解决方案开源库推荐:文件上传库
    [转]Go-micro 服务端、客户端简单示例
    micro 与go-micro的区别
    【转】一篇文章说清楚 TDengine 的 FQDN
    【转】LV扩容(lvextend)
    [AWS] Launch configuration vs Launch template
    AcWing 867. 分解质因数
    AcWing 866. 试除法判定质数
    AcWing 861. 二分图的最大匹配
  • 原文地址:https://www.cnblogs.com/bydzxzy/p/9623365.html
Copyright © 2011-2022 走看看