每日任务:内置函数dict

知识点见注释

# __author__ ='wuwa'
# -*- coding: utf-8 -*-

'''
1. 格式:dict = {key:value},{}表示字典,键-值对的方式存储数据,键值使用“:”分开,每一组键值对用“,”分隔
2. 键是唯一的,可以是字符串、数值(例如10)、元组,但是不可用列表,因为列表是可变的(可变类型不能作为字典的key)
3. 值是不唯一的,可以是列表、字典或其他可变类型
4. 支持的方法,对字典进行遍历、修改、删除
5. 参考文档python3 API等
'''

if __name__ == "__main__":
    dicts = {'name': 'john', 'age': 12, 'phone': 1234454}

    # 获取字典的长度,通过python的内置函数“len”获取字典长度
    print('获取字典的长度:', len(dicts))

    # 增加新的键值对
    dicts['sex'] = 'boy'
    print('增加键值对的字典:', dicts)

    # 删除某个键,如果该键不存在与这个字典中会抛出keyError
    del dicts['age']
    print('删除某个键的字典:', dicts)

    # 判断key是否存在于字典中
    if 'phone' in dicts:
        print('phone存在于dicts')

    # 字典拷贝
    dicts_new = dicts.copy()
    print('拷贝后新生成的字典:', dicts_new)

    # 返回指定key的value,若无value值,则返回默认值,若没有设置默认值,则返回None,不会抛出keyerror异常
    dicts_olds = {'phone': 'hhhh', 'test': 'tests'}

    dicts_old = dicts_olds.get('phone')
    print('显示指定key的值:', dicts_old)

    dicts_new_value = dicts_olds.get('python', 'hello python')
    print('显示默认值:', dicts_new_value)

    dicts_new_value_1 = dicts_olds.get('python3')
    print('显示默认值:', dicts_new_value_1)

    # 以元组方式返回字典的所有 key 和value
    dicts_value = dicts.items()
    print('显示所有key value:', dicts_value)
    # 遍历字典列表
    for key, values in dicts_value:
        print(key, values)

    # 显示字典所有的key
    print('打印所有的key:', dicts.keys())

    # 显示字典所有的value
    print('打印所有的values:', dicts.values())

    # 创建一个新的字典 fromkeys(seq, value),seq是一个列表
    deicts_new_value_2 = dicts.fromkeys([1, 2, 3], 'python')
    print('创建一个新的字典', deicts_new_value_2)

    # 删除指定key,并返回key对应的值
    print('删除指定的key:', dicts.pop('sex'))

    # 删除字典中的item,字典的最后一组key-value,并显示删除的key-value
    print('删除字典最后一组键值对且返回删除的内容:', dicts.popitem())

    # 给字典中的key设置默认值,如果key存字典中,且有值则返回key本身的值,
    # 若key不存在字典中,则返回默认值,若key不存在字典中,且无默认值,则返回None
    print('设置setdefault前dicts的值:', dicts)
    dicts.setdefault('name', 'oooo')
    dicts.setdefault('sex', 'lalala')
    dicts.setdefault('sex1')
    print(dicts)

    # 合并两个字典
    dicts.update({"hello": 'python', 'hi': 'python3'})
    print(dicts)

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 知识点见注释
    五娃儿阅读 310评论 0 0
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,029评论 25 709
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,119评论 19 139
  • 唐诗三百首详解(一 行宫 唐代:元稹(yuán zhěn) 寥落古行宫,宫花寂寞红。 白头宫女在,闲坐说玄宗。 译...
    汉唐雄风阅读 6,394评论 4 29
  • 2018第一个月已经过完一半,大部分人的新年计划已经在2017年的基础上进行了更改,可是回想2017年初是不是也做...
    莫妮卡的黄金屋阅读 352评论 0 2