zoukankan      html  css  js  c++  java
  • 字典与集合的用法

    1. 什么是字典

      字典是以key:value的形式来保存数据

      用{}表示. 存储的是key:value

    2. 字典的增删改查

      1. 添加

      dic[新key] = 值

      setdefault()

    dic = {"美国":"美国往事","中国":"李云龙"}
    dic["印度"] = "三傻大闹宝莱坞"
    print(dic)
    dic["韩国"] = "釜山行"
    print(dic)
    dic.setdefault("韩国","奸臣")
    print(dic)
    dic.setdefault("英国","奸臣")
    print(dic)

      2. 删除

      pop(key)

    dic = {"张艺谋":"红高粱","陈凯歌":"霸王别姬","吴京":"战狼","李安":"断背山"}
    dic.pop("吴京")
    print(dic)
    dic.popitem()
    print(dic)
    del dic["张艺谋"]
    print(dic)
    dic.clear()
    print(dic)

      3. 修改

      dic[老key] = 值

      update() 更新字典

    dic = {"赵四": "刘晓光", "刘能": "王小利", "王木生": "范伟"}
    print(dic["刘能"])
    print(dic.get("大脚", "没有这个人"))
    ret = dic.setdefault("皮校长", "皮长山")
    print(ret)
    ret = dic.setdefault("王木生", "皮长山")
    print(ret)
    
    dic1 = {"赵四":"刘晓光", "刘能":"王晓利", "王木生":"范伟"}
    dic2 = {"赵四":"宝宝", "刘能":"萌萌", "皮校长":"皮长山"}
    dic1.update(dic2)
    print(dic1)
    print(dic2)

      4. 查询

      dic[key]

      get(key, 值)

      setdefault()

      第一个功能是添加(当key不存在).

      第二个功能是查询(根据你给的key查询)

        整个执行流程: 判断给的key是否存在. 如果存在. 就不执行新增流程.直接查询出这个key对应的value如果key不存在. 先执行新增操作. 再使用key把对应的value查询出来

      setdefault(key, value)

    dic1 = {"赵四":"刘晓光", "刘能":"王晓利", "王木生":"范伟"}
    print(dic1["赵四四"]) # KeyError: '赵四四' key不存在
    
    print(dic1.get("刘能能"))  # None 当key不存在返回None
    print(dic1.get("刘能能", "没有这个人")) # 当key不存在. 返回第二个参数. 默认第二个参数是None
    
    ret = dic1.setdefault("皮长山", "皮校长")
    print(ret) # 皮校长

      5. 遍历,字典是一个可迭代对象

    3. 字典的相关操作

      1. keys() 获取到所有的键

    dic = {"赵四":"刘晓光", "刘能":"王晓利", "王木生":"范伟"}
    for key in dic.keys(): 
        print(key)

      2. values() 获取到所有的值

    dic = {"赵四":"刘晓光", "刘能":"王晓利", "王木生":"范伟"}
    for value in dic.values():
        print(value)

      3. items() 拿到所有的键值对

    dic = {"赵四":"刘晓光", "刘能":"王晓利", "王木生":"范伟"}
    for k, v in dic.items():
         print(k)
         print(v)

    4. 字典的嵌套

      字典的嵌套. 字典套字典

      

    wf = {
        "name":"汪峰",
        "age":52,
        "hobby":["唱歌", "上头条", "穿皮裤"],
        "wife": {
            "name": "章子怡",
            "age": 49,
            "hobby":["演戏", "上电视", "当导师"],
            "tishen": {
                "name":"萌萌",
                "age":28
            }
        }
    }
    print(wf["wife"]["tishen"]["name"])

    5. 集合

      集合中的元素是不重复的. 必须是可hash的(不可变), 字典中的key

    lst = ["麻将", "骰子", "扑克", "骰子", "扑克"]
    s = set(lst)
    print(s)  #麻将, 骰子, 扑克

      set()是去重最简单的方法

      空集合:set()

      空元组:tuple()

      空列表:list()

      非空集合: {123}集合, 集合其实就是不存value的字典

  • 相关阅读:
    map.entry<k,v>小用法(转)
    zookeeper实现分布式锁服务
    组播协议
    OSPF
    Tomcat默认工具manager管理页面访问配置
    将web应用部署到Tomcat的三种方式
    运行startup.bat的启动过程
    IDEA创建简单servlet程序
    setvlet基础知识
    NIO基本操作
  • 原文地址:https://www.cnblogs.com/fu-1111/p/10046618.html
Copyright © 2011-2022 走看看