zoukankan      html  css  js  c++  java
  • python (字典)

    一. 字典

      语法 :    {key1: value1, key2: value2....}

      注意: key必须是不可变(可哈希)的. value没有要求.可以保存任意类型的数据

      1. 字典的增删查改

        增加: dic['key'] = 'value'  #新增{'key':value"} , 若字典中含有的key和新增的key相同,将value替换.

            dic.setdefault('key','value')  #字典中若含有key, 则不再添加. 若只添加key,value为None.

    dic = {'uzi':'简自豪','房东的猫':'小黑','美女':'王珞丹'}
    dic['赛利亚']='我老婆'
    dic['韩xx']='哼哼'
    dic['赛利亚']='白丝袜'#虽然 key '赛利亚',已经有了. 重  新添加就会重新为value 赋值.
    dic.setdefault('旭旭宝宝','增幅王')
    dic.setdefault('旭旭宝宝','强化王')#字典中已经含有了 key '旭旭宝宝',所以vlaue 不增加
    print(dic)
    #程序输出:{'uzi': '简自豪', '房东的猫': '小黑', '美女': '王珞丹', '赛利亚': '白丝袜', '韩xx': '哼哼', '旭旭宝宝': '增幅王'}

        删除: dic.pop("key")  #根据"key"删除. 返回的是"value"

            del dic["key"]  #根据"key"删除. 无返回值,只是一个操作

            dic.popitem()  #随机删除.返回的是元组(即print(dic.popitrm())打印出来的是元组)

            dic.clear()  #清除字典

    dic = {'uzi':'简自豪','房东的猫':'小黑','美女':'王珞丹'}
    dic.pop('uzi')#根据 'key'删除
    #输出结果: {'房东的猫': '小黑', '美女': '王珞丹'}
    del dic['uzi']
    #输出结果: {'房东的猫': '小黑', '美女': '王珞丹'}
    dic.popitem() #随机删除
    #输出结果: 随机删除一个
    dic.clear() #清除
    #输出结果: {}
    print(dic)

        修改: dic[''key'']  #用key修改

            dic update(dic1)  #将dic1 中的内容更新至 dic 若key 存在则替换

    dic = {'uzi':'简自豪','房东的猫':'小黑','美女':'王珞丹'}
    dic['uzi']=dic['uzi']+'小狗'#在dic中的key为'uzi'的vlaue 添加
    dic1 = {'雪糕':'哈根达斯','学习':'python','对象':'没有'}
    dic.update(dic1)
    #输出结果:{'uzi': '小狗', '房东的猫': '小黑和少年佩', '美女': '王珞丹和赵丽颖', '雪糕': '哈根达斯', '学习': 'python', '对象': '没有'} dic2
    = {'uzi':'小狗','房东的猫':'小黑和少年佩','美女':'王珞丹和赵丽颖'} dic.update(dic2)#将dic2中的vlaue更新到dic,如果dic2中的key在duc中存在,则将vlaue替换, 不存就添加
    #输出结果:{'uzi': '小狗', '房东的猫': '小黑和少年佩', '美女': '王珞丹和赵丽颖'}
    print(dic)

        查找: dic['key']  #查询'key'的内容,若key不存在  报错.     ****添加有点像,但添加要在 ' = ' 后面将 ' value '写出来

            dic.get('key','默认值=None')  #key不存在,返回None.  若给出默认值,key不存在就返回给出的默认值.

            dic.setdefault('key','value')  #****setdefault进行两次操作,第一次将输入的键值对添加到字典中,若字典中已经有了输入的'key'.则跳过添加,进行查询'key'的内容.

    dic = {'uzi':'简自豪','房东的猫':'小黑','美女':'王珞丹'}
    print(dic['uzi'])
    print(dic.get('哈哈','最牛逼'))#
    print(dic.setdefault('uzi啊','最牛逼 '))#先增加,后提取
    #输出结果:

      #简自豪
      #最牛逼
      #最牛逼

    
    

      2. dict的常用操作

        dic.keys()  #返回(取出)字典中所有的key集合,  像列表却不是列表.

        dic.values()  #返回字典中所有的value集合

        dic.items()  #返回字典中键值对. (键值对以元组的形式)

    dic = {'uzi':'简自豪','房东的猫':'小黑','美女':'王珞丹'}
    print(dic.keys())
    print(dic.values())
    print(dic.items())
    #输出结果:

    #dict_keys(['uzi', '房东的猫', '美女'])
    #dict_values(['简自豪', '小黑', '王珞丹'])
    #dict_items([('uzi', '简自豪'), ('房东的猫', '小黑'), ('美女', '王珞丹')])

      3.解构

        a.b=(1.2)

        a=1

        b=2

      4.字典for循环

    dic = {1: 'a', 2:'b', 3:'c'}
    for a in dic:   # 直接循环字典.拿到的是key
    
        print(a)
        print(dic[a])#dic[a] 取出key为'a'的内容
    #输出结果:

      1
      a
      2
      b
      3
      c

  • 相关阅读:
    About “condition variables”
    路由表的读法(zz)
    C++字符串之一(字符表示)
    Audio Codec Summary
    关于telnet
    C++ 之 new
    (转)让ubuntu9.10开机自动挂载NTFS分区
    WorkSpace And Static Library In GarbageXcode4
    mac os x 10.7下配置svn服务器
    ubuntu下设置双显示器扩展桌面
  • 原文地址:https://www.cnblogs.com/dong-/p/9274683.html
Copyright © 2011-2022 走看看