zoukankan      html  css  js  c++  java
  • 7.Python学习笔记:[字典]

    dic={'name':'liang','age':20,'hobby':'swim'}
    增改:
    dic['age1']=22  #无则增,有则替换
    print(dic)
    
    a=dic.setdefault('age',32)  #无则增,有则不修改,返回字典中原值
    print(a)  为20
    
    b=dic.setdefault('other',20)  #无则增加,返回加的值
    print(b)
    print(dic)
    
    dic1={'other':'20'}   #追加
    dic.update(dic1)
    结果:{'name': 'liang', 'age': 20, 'other': '20', 'hobby': 'swim'}

     删:

    dic.clear()     #清空,数组还在
    del dic['name']
    del dic
    
    ret=dic.pop('age')    #删除POP中内容,并返回删除的内容
    ret=dic.popitem()     #随机删除一个,并返回删除的内容,一般不用
    查:
    print(dic['name'])      #name这个字段内容
    
    print(dic.keys())        #所有字段名字,结果:dict_keys(['age', 'name', 'hobby'])
    print(list(dic.keys()))  #所有字段名字,结果:['age', 'hobby', 'name']
    
    print(dic.values())       #所有字段内容,结果:dict_values([20, 'swim', 'liang'])
    print(list(dic.values())) #所有字段内容,结果:['liang', 20, 'swim']
    
    print(list(dic.items()))  #所有内容

     dict.fromkeys[很少用]:

    d1 = dict.fromkeys(['host1', 'host2', 'host3'], 'Mac')
    print(d1)   #{'host3': 'Mac', 'host2': 'Mac', 'host1': 'Mac'}
    
    d1['host1'] = 'xiaomi'
    print(d1)   #{'host1': 'xiaomi', 'host2': 'Mac', 'host3': 'Mac'}
    d2 = dict.fromkeys(['host1', 'host2', 'host3'], ['Mac', 'huawei'])
    print(d2)   #{'host3': ['Mac', 'huawei'], 'host2': ['Mac', 'huawei'], 'host1': ['Mac', 'huawei']}
    
    d2['host1'][0] = 'xiaomi'      #注意
    print(d2)   #{'host3': ['xiaomi', 'huawei'], 'host2': ['xiaomi', 'huawei'], 'host1': ['xiaomi', 'huawei']}

     字典的嵌套:

    dic={
        '中国':{'江西':'赣州','湖南':'长沙'},
        'china':{'江西':['赣州','瑞金']}
    }
    print(dic['china']['江西'][1])    #瑞金

     排序  sorted(dict) 返回一个有序的包含字典所有key的列表: 

    dic={5:'555',2:'666',4:'444'}
    print(sorted(dic))  #[2, 4, 5]按字段
    
    dic={5:'555',2:'666',4:'444'}
    print(sorted(dic.values()))  #['444', '555', '666']按内容
    
    dic={5:'555',2:'666',4:'444'}
    print(sorted(dic.items()))  #[(2, '666'), (4, '444'), (5, '555')]按字段

     遍历:

    for i in dic :  #遍历的是字段
        print(i)    #hobby name age
    
    for i in dic :  #遍历所有内容
        print(i,dic[i])
    
    for i,v in dic.items() :   #遍历所有内容
        print(i,v)
  • 相关阅读:
    hh
    SDUT 3923 打字
    最短路
    阶乘后面0的个数(51Nod 1003)
    大数加法
    Biorhythms(中国剩余定理)
    usaco-5.1-theme-passed
    usaco-5.1-starry-passed
    usaco-5.1-fc-passed
    usaco-4.4-frameup-passed
  • 原文地址:https://www.cnblogs.com/LiangZhiWei/p/9199142.html
Copyright © 2011-2022 走看看