zoukankan      html  css  js  c++  java
  • day3_字典

    字典:

    1. 字典用 {} 表示
    2. 数据类型:  dict
    3. 字典的存储方式:  key=value     --  键对应值
    • 只有不可变的数据类型才能作为 key   -- []不能作为key
    • 字典的 value 可以是任意数据类型

        4.字典是无序的数据集合,不能根据索引来取值

        5.字典用 key 来取 value

    • dic = {"1":110,"2":666}
      n = dic["1"]
      print(n)

        6.字典可以被for循环,默认循环字典的 key

    字典的方法

    • dic = {"1":"周杰伦","2":"周星驰","3":"大坏男孩"}
      # 取字典的key
      for i in dic.keys():
      print(i)
      # 取字典的值
      for i in dic.values():
      print(i)
      # 取字典的键值,元祖(key,value)
      for i in dic.items():
      print(i)
    • # update(key=value)
      # key不能是数字,只能是字母、下划线和中文
      # 如果key存在,则修改value;key不存在,则新增
      dic.update(idol = "星爷")
      print(dic)
      dic.update(idol = "前女友")
      print(dic)
      # update({key:value})
      # 循环传入的字典,把key和value添加或者修改,组成新的键值对
      dic.update({'男神':"胡歌","女神":"母上大人"})
      print(dic)
      dic.update({"1":"Jay"})
      print(dic)
    • #setdefault(key,value)
      # 如果key存在,则不做任何操作;key不存在,则把传入的key和value组成新的键值对
      dic.setdefault("4","My ideal")
      print(dic)
      dic.setdefault("1","Joy")
      print(dic)
    • # 根据key删除value,key不存在,则报错
      dic.pop("3")
      print(dic)
      dic.pop("4")
    • # clear()  清空字典
      dic = {"1":"周杰伦","2":"周星驰","3":"李叶彬"}
      dic.clear()
      print(dic)
    • # 删除字典:del
      del dic
      print(dic)
    • # 浅拷贝:copy()
      n = dic.copy()
      print(n)
    • # dic.get(key, message)
      # 如果key存在,则返回value;如果key不存在,则默认返回None:message不为空,返回自己定义的内容
      n = dic.get("3")
      print(n)
      m = dic.get("4")
      print(m)
      p = dic.get("4","666")
      print(p)
    • # fromkeys(iterable,value)  iterable(能被迭代,能被for循环的数据。例如:字符串、列表、元祖)
      # 元素和value一一对应,组成键值对,返回一个新的字典
      d = dic.fromkeys([1,2,3],"My idol")
      print(d)
      print(type(d))

    随堂练习

    • dic = {
      "k": [
      2,
      3,
      "hello",
      {
      "hello": {
      "a": "b"
      },
      False: (
      2, 3, 4, {
      "kk2": {"abc": [4, 5, 6, {"kk3": 888}]}
      }
      )
      }
      ]
      }

      # 通过for循环取出dic字典所有数字的和
      n = 0
      for i in dic.values():
      print(i)
      for i1 in i:
      if type(i1) == int:
      n = n + i1
      print(n)
      elif type(i1) == dict:
      print(i1)
      for i2 in i1.values():
      if type(i2) == tuple:
      print(i2)
      for i3 in i2:
      if type(i3) == int:
      n = n + i3
      print(i3)
      print(n)
      else:
      print(i3)
      for i4 in i3.values():
      print(i4)
      for i5 in i4.values():
      print(i5)
      for i6 in i5:
      if type(i6) == int:
      n = n + i6
      else:
      print(i6)
      for i7 in i6.values():
      n = n + i7
      print(i7)
      print(n)
      print(n)

      # 打印出dic字典的值888
      a = dic.get("k")[-1].get(False)[-1].get("kk2").get("abc")[-1].get("kk3")
      print(a)
    一行代码一行诗
  • 相关阅读:
    JS控制台打印星星,总有你要的那一款~
    css居中方法
    line-height
    position定位
    IE盒子模型
    CSS中的盒模型
    CSS中的BEM命名
    循环语句总结(代码以C#为例)
    程序设计中的数学思维函数总结(代码以C#为例)
    转:SpringBoot 自定义异常@ContollerAdvice ExceptionHandler不起作用
  • 原文地址:https://www.cnblogs.com/huainanhai/p/11130544.html
Copyright © 2011-2022 走看看