zoukankan      html  css  js  c++  java
  • PY基础之字典的内置方法

    PY基础之字典的内置方法

    1. 作用

    对于值添加描述信息使用他

    2. 定义方式

    用{}以逗号隔开加入键值对key:value

    info_dict = {'name': 'wangdapao', 'age': 18, 'height': 120, 'gender': 'female', 'hobby_list': ['dapao', '666', '233']}
    

    3. 内置方法

    info_dict = {'name': 'wangdapao', 'age': 18, 'height': 120, 'gender': 'female', 'hobby_list': ['dapao', '666', '233']}
    
    for i in info_dict:  # 遍历字典key
        print(i)
    
    for i in info_dict.items():  # 遍历字典键值对
        print(i)
    
    for i in info_dict.values():  # 遍历字典value值
        print(i)
    
    for k,v in info_dict.items():  # 遍历字典键值对并且将k,v分开打印
        print(k,v)
    
    info_dict.pop('name')  # 删除指定key对应的键值对,找不到key会报错
    print(info_dict)
    
    info_dict.popitem()  # 删除字典最后一个键值对
    print(info_dict)
    
    info_dict = {'name': 'wangdapao', 'age': 18, 'height': 120, 'gender': 'female', 'hobby_list': ['dapao', '666', '233']}
    
    print(info_dict.get('name'))  # 返回key对应的值
    print(info_dict.get('shabi'))  # 找不到key则返回None
    
    info_dict.setdefault('gender',123)  # 若字典里存在,则不变,若没有,则追加一个键值对
    print(info_dict)
    info_dict.setdefault('傻逼',123)  # 若字典里存在,则不变,若没有,则追加一个键值对
    print(info_dict)
    
    info_dict.update({'tank':'666'})  # 追加一个新的键值对
    print(info_dict)
    
    # fromkeys由dict.出来,快速造一个字典
    print(dict.fromkeys(['a',2,3,4,5],'nick'))  
    # {'a': 'nick', 2: 'nick', 3: 'nick', 4: 'nick', 5: 'nick'}
    
    # 字典实例:词频统计
    gift = ['a','b','a','c','x','x','y','y','z','z','c','a','y','y','y','a','z']
    count = {}
    for i in gift:
        if count.get(i) is None:
            count[i] = 1
        else:
            count[i] += 1
    print(count)
    # {'a': 4, 'b': 1, 'c': 2, 'x': 2, 'y': 5, 'z': 3}
    # 进阶:打印前三高频字母
    def func(i):
        return i[1]
    lis = list(count.items())
    lis.sort(key=func)
    lis.reverse()
    print(lis[:3])
    

    4. 存一个值还是多个值

    多个值

    5. 有序or无序

    无序

    6. 可变or不可变(重点)

    可变

  • 相关阅读:
    SQL临时表加分页操作
    JS 操作Url参数
    C#字符串根据特定字符串分割
    windows下python读写excel
    怎样才是更好的自己 多好才算更好的未来
    IndentationError: unindent does not match any outer indentation level
    LinAlgError: Array must not contain infs or NaNs
    c#操作xml
    sql索引碎片产生的原理 解决碎片的办法(sql碎片整理)(转)
    利用sys.dm_db_index_physical_stats查看索引碎片等数据(转)
  • 原文地址:https://www.cnblogs.com/dadazunzhe/p/11303998.html
Copyright © 2011-2022 走看看