zoukankan      html  css  js  c++  java
  • python字典多重

    #encoding=utf-8

    print '中国'

    #字典的一键多值

    print'方案一 list作为dict的值 值允许重复'

    d1={}
    key=1
    value=2
    d1.setdefault(key,[]).append(value)
    value=2
    d1.setdefault(key,[]).append(value)

    print d1

    #获取值
    print '方案一 获取值'
    print list(d1[key])

    print '方案一 删除值,会留下一个空列表'
    d1[key].remove(value)
    d1[key].remove(value)
    print d1

    print '方案一 检查是否还有一个值'
    print d1.get(key,[])

    print '方案二 使用子字典作为dict的值 值不允许重复'

    d1={}
    key=1
    keyin=2
    value=11
    d1.setdefault(key,{})[keyin]=value
    keyin=2
    value=22
    d1.setdefault(key,{})[keyin]=value
    keyin=3
    value=33
    d1.setdefault(key,{})[keyin]=value

    print d1

    print '方案二 获取值'
    print list(d1[key])

    print '方案二 删除值,会留下一个空列表'
    del d1[key][keyin]
    keyin=2
    del d1[key][keyin]
    print d1

    print '方案二 检查是否还有一个值'
    print d1.get(key,())

    print '方案三 使用set作为dict的值 值不允许重复'
    d1={}
    key=1
    value=2
    d1.setdefault(key,set()).add(value)
    value=2
    d1.setdefault(key,set()).add(value)
    value=3
    d1.setdefault(key,set()).add(value)

    print d1

    print '方案三 获取值'
    print list(d1[key])

    print '方案三 删除值,会留下一个空列表'
    d1[key].remove(value)
    value=2
    d1[key].remove(value)
    print d1

    print '方案三 检查是否还有一个值'
    print d1.get(key,())

  • 相关阅读:
    8.17HTML 标签
    二进制,八进制,十六进制
    keil5之32环境配置
    初遇stm32
    python与opencv的结合之人脸识别值
    01_什么是数据结构以及C语言指针回顾
    07_SSH免登录配置
    06_Linux系统常用命令
    05_Linux网络配置及CRT远程
    04_VMware虚拟机网络配置
  • 原文地址:https://www.cnblogs.com/Zidon/p/4589870.html
Copyright © 2011-2022 走看看