zoukankan      html  css  js  c++  java
  • python基础-字典dict及内置方法

    字典-dict

    • 用途:

    • 定义方法:通过{} 来存储数据,通过key:value (键值对)来存储数据,每个键值对通过逗号分隔。在键值对中,key 是不可变的数据类型,value 是任意数据类型

      def dict_setd():
          # 第一种定义方式
          d1 = {'name': 'egon', 'age': 84}
          # 第二种定义方式
          d2 = dict({'name': 'egon', 'age': 84})
          # 第三种定义方式
          l1 = ['name', 'age']
          l2 = ['egon', 18]
          z1 = zip(l1, l2)
          d3 = dict(z1)
          # 打印定义的字典
          print(d1)
          print(d2)
          print(d3)
      dict_setd()
      

    常用方法:

    • 按照key : value 映射关系取值,可存可取

      # 按照key:value映射关系取值,可存可取。
      def dict_getvalue():
          d1 = {'name': 'egon', 'age': 73}
          print(d1)  # 取出d1 中的值
          # 当字典中存在key 时,修改value值,如果key 不存在,新增键值对
          d1['name'] = 'alex'
          d1['gender'] = 'male'
          print(d1)
      dict_getvalue()
      
    • 成员判断 in / not in ,返回布尔值

      # 成员运算in / not in:判断key 是否在字典中存在(不是判断value),返回布尔值
      def dict_in():
          d1 = {'name': 'egon', 'age': 73}
          print('egon' in d1)
      dict_in()
      
    • len:获取当前字典中键值对的个数

      # len:获取当前字典中键值对的个数
      def dict_len():
          d = {'name': 'alex', 'age': 73, 'gender': 'male'}
          print(len(d))
      dict_len()
      
    • get:获取指定key 的值,如果值不存在,默认返回None,可修改默认的返回值

      # get:获取指定key 的值,如果值不存在,默认返回None,可修改默认返回值
      def dict_get():
          d = {'name': 'alex', 'age': 73}
          print(d.get('gender'))  # 结果None
          print(d.get('gender', 'male'))  # 结果male
      dict_get()
      
    • keys,values,items:获取字典中的key,value,键值对

      # keys,values,items
      def dict_kvi():
          d = {'name': 'alex', 'age': 73}
          print(d.keys())  # 结果为:返回所有键的列表:['name','age']
          print(d.values())  # 结果为:返回所有值的列表:['alex',73]
          print(d.items())  # 结果为:返回所有的键值对,其中返回值是以列表套元组的形式体现,每一个键值对都存在元组中
      
          # 根据键值对或者key 和value
          for key, value in d.items():
              print(key, value)
      dict_kvi()
      
    • pop:通过指定的key 弹出对应的键值对,返回值为键值对中的值

      # pop:删除,将指定的key 弹出,返回值为key 对应的value
      def dict_pop():
          d = {'name': 'alex', 'age': 73, 'gender': 'male'}
          a = d.pop('name')
          print(d)  # 字典中不再有'name':'alex'这个键值对
          print(a)  # 'name' 对应的值:alex
      dict_pop()
      
    • popitem:随机弹出一组键值对,返回值是以元组形式表示的键值对信息

      # popitem:随机将一组键值对弹出,返回值为以元组展示的键值对
      def dict_popitem():
          d = {'name': 'alex', 'age': 73, 'gender': 'male'}
          a = d.popitem()
          print(a)
          print(d)
      dict_popitem()
      
    • update:用新字典替换旧字典

      # update:用新字典替换就字典
      def dict_upd():
          d = {'name': 'alex', 'age': 73, 'gender': 'male'}
          d.update({'hobby':'read'})  # 当要替换的键值对不存在时,将该键值对添加到字典中
          d.update({'name':'egon'})   # 当要替换的键值对存在时,直接修改该键值对的值
          print(d)
      dict_upd()
      
    • fromkeys:生成一个新字典,需要两个参数。第一个参数必须是可迭代对象,这里会以可迭代对象中的元素依次作为字典中的key,第二个参数则为key 的value 值,组成一个新的字典

      # dict.fromkey:生成一个新字典,第一个参数为可迭代对象,将可迭代对象中的元素依次作为key ,
      # 第二个参数作为可迭代对象中元素的value ,组成一个新字典
      def dict_fromkey():
          print(dict.fromkeys([1,2,3],['ke','k1']))
      dict_fromkey()
      
    • setdefault:指定的key 存在时,不修改键值对的内容,并返回键值对的value 值;如果不存在,则将指定的key 和value 作为新的键值对增加到字典中,并返回该value

      # setdefault:字典中不存在指定的key 时,新增该键值对,并返回value;如果存在,不修改键值对,并返回value
      def dict_sd():
          d = {'name': 'alex', 'age': 73, 'gender': 'male'}
          print(d.setdefault("hobby","read"))
          print(d)
          print(d.setdefault("name","egon"))
          print(d)
      dict_sd()
      
    • 字典dict 是无序的、可变的、可存多个值的数据类型

  • 相关阅读:
    20个实用便捷的CSS3工具、库及实例
    jquery插件推荐
    Jquery遮罩插件,想罩哪就罩
    font-size:100%有什么作用
    工作笔记:移动web页面前端开发总结
    移动web页面前端开发总结2
    移动端web开发
    移动WEB前端小结
    移动WEB开发常用技巧
    js 移动web 开发
  • 原文地址:https://www.cnblogs.com/xiaodan1040/p/11806722.html
Copyright © 2011-2022 走看看