zoukankan      html  css  js  c++  java
  • Python字典的操作与使用

    字典的描述

    字典是一种key-value的数据类型,使用就像我们上学用的字典,通过拼音(key)来查对应字的详细内容(value)。

    字典的特性

    1、字典是无序的(不像列表一样有下标,它通过key来获取value)

    2、key必须是唯一的,所以天生去重

    字典的操作

    info = {
        'stu1101': "TengLan Wu",
        'stu1102': "LongZe Luola",
        'stu1103': "XiaoZe Maliya",
    }

    获取所有信息

    print (info)

    获取其中一个值

    print (info["stu1101"])

    更改其中一个值

    info["stu1101"] = "武藤兰"

    添加其中一个值

    info["stu1104"] = "苍井空"

    删除其中一个值

    del info["stu1101"]

    info.pop("stu1101")

    info.popitem() #随机删除。

    查找

    print (info["stu1101"])#此方法在key存在时不会有问题,若key不存在,即报错。

    print(info.get('stu1101'))#安全的获取,没有则返回空。

    print('stu1101' in info)#判断key是否在字典中存在,返回布尔值。

    字典的多级嵌套

    av_catalog = {
        "欧美":{
            "www.youporn.com": ["很多免费的,世界最大的","质量一般"],
            "www.pornhub.com": ["很多免费的,也很大","质量比yourporn高点"],
            "letmedothistoyou.com": ["多是自拍,高质量图片很多","资源不多,更新慢"],
            "x-art.com":["质量很高,真的很高","全部收费,屌比请绕过"]
        },
        "日韩":{
            "tokyo-hot":["质量怎样不清楚,个人已经不喜欢日韩范了","听说是收费的"]
        },
        "大陆":{
            "1024":["全部免费,真好,好人一生平安","服务器在国外,慢"]
        }
    }
    
    av_catalog["大陆"]["1024"][1] += ",可以用爬虫爬下来"
    print(av_catalog["大陆"]["1024"])
    #ouput 
    ['全部免费,真好,好人一生平安', '服务器在国外,慢,可以用爬虫爬下来']

    av_catalog.setdefault("大陆",{"www.baidu.com":[1,2]})#添加之前先遍历字典,若有相同的key,则不修改,若无,则添加新值。

    其他字典用法

    合并字典

    info = {
        'stu1101': "TengLan Wu",
        'stu1102': "LongZe Luola",
        'stu1103': "XiaoZe Maliya",
    }
    b = {
        1:2,
        3:4,
        5:6
    }
    info.update(b)
    print(info)#合并字典,若有交叉的key则后来的key会覆盖,若无,则添加进去。
    print(info.items())#将字典转化为列表,但是这个列表不支持下标,很奇怪。

    定义一个新的字典(不常用它)#它会把值全部copy给每一个key。

    >>c = dict.fromkeys(["key1","key2","key3"],["value"])
    >>print(c)
    {'key1': ['value'], 'key3': ['value'], 'key2': ['value']}

    字典的循环

    info = {
        'stu1101': "TengLan Wu",
        'stu1102': "LongZe Luola",
        'stu1103': "XiaoZe Maliya",
    }
    for i in info:
        print(i,info[i])

    谢土豪

    如果有帮到你的话,请赞赏我吧!

  • 相关阅读:
    Java初学—类与对象
    linux dd命令测试U盘读写速度
    路由器的几种访问方式
    制作Linux启动盘并安装Linux系统到实体机
    RAID阵列与LVM逻辑卷组创建
    有关Linux下库的概念、生成和升级和使用等
    LInux中VIM的使用和定制
    如何通过mount命令挂载存储设备
    硬盘分区和系统启动
    RAID阵列与LVM逻辑卷组原理
  • 原文地址:https://www.cnblogs.com/kerwinC/p/5927182.html
Copyright © 2011-2022 走看看