• 学习笔记-Python基础8-列表元祖字典集合-字典dict


      1 #dict字典
      2 #dict是一种没有顺序的组合数据,数据以键值对的形式出现
      3 #一、创建dict
      4 #1、创建空dict
      5 d = {}
      6 print(d)
      7 d = dict()
      8 print(d)
      9 #2、创建带值的dict
     10 d = {"one":1, "two":2}
     11 print(d)
     12 d = dict({"one":1, "two":2}) #传入一个字典型参数
     13 print(d)
     14 d = dict(one=1, two=2) #传入多个关键字参数
     15 print(d)
     16 d= dict([("one", 1), ("two", 2)]) #传入一个list,内部嵌套tuple
     17 print(d)
     18 #二、字典特征,半序列类型,没有切片和索引
     19 #字典中的数据,每个都由键值对组成,即kv对;其中key,必须是一个可哈希的值,比如int、string、float、tuple等,但list、set、dict不行
     20 #三、字典常见操作
     21 d = {"one":1, "two":2}
     22 print(d["one"])
     23 d["one"] = "eins"
     24 print(d)
     25 del d["one"] #del(d["one"])
     26 print(d)
     27 #1、成员检测in、not in
     28 if "two" in d:
     29     print("key")
     30 if 2 in d:
     31     print("value")
     32 if ("two",2) in d:
     33     print("kv")
     34 #2、遍历,python2和3区别大,不通用
     35 d = {"one":1, "two":2}
     36 for k in d:
     37     print(k, d[k]) #for循环,直接访问的k为key值,而非一对
     38 for k in d.keys():
     39     print(k, d[k]) #上述方法的改写,推荐这种写法
     40 for v in d.values():
     41     print(v) #只访问values值
     42 #下面写法在dict中报错
     43 # for k,v in d:
     44 #     print(k,"-",v)
     45 #应该改写成如下
     46 for k,v in d.items():
     47     print(k,"-",v)
     48 #3、字典生成式
     49 d = {"one":1, "two":2}
     50 dd = {k:v for k,v in d.items()}
     51 print(dd)
     52 dd = {k:v for k,v in d.items() if v % 2 == 0} #加限制条件
     53 print(dd)
     54 #四、字典相关函数
     55 #通用的函数:len、max、min、dict
     56 #1、str(dict),返回字典的字符串格式
     57 d = {"one":1, "two":2}
     58 print(str(d))
     59 #五、字典的操作方法
     60 #1、clear,清空字典内部数据
     61 #2、items,返回字典的键值对组成的元祖格式
     62 d = {"one":1, "two":2}
     63 i = d.items()
     64 print(type(i))
     65 print(i)
     66 #3、keys,返回字典的键组成的结构
     67 k = d.keys()
     68 print(type(k))
     69 print(k)
     70 #4、values,返回一个和keys、items一样的可迭代的结构
     71 v = d.values()
     72 print(type(v))
     73 print(v)
     74 #5、get,返回指定键的值,如果没有这个键,则返回None,而不会报错,如果后面填写了第二个参数,则表示,如果找不到,就返回第二个参数设置好的返回值
     75 d = {"one":1, "two":2}
     76 print(d.get("333",1))
     77 #6、fromkeys,使用指定的序列作为字典的键,再跟一个值,作为字典所有键的值
     78 l = ["eins", "zewi", "tree"]
     79 d = dict.fromkeys(l,"aaa")
     80 print(d)
     81 '''
     82 打印如下:
     83 {}
     84 {}
     85 {'one': 1, 'two': 2}
     86 {'one': 1, 'two': 2}
     87 {'one': 1, 'two': 2}
     88 {'one': 1, 'two': 2}
     89 1
     90 {'one': 'eins', 'two': 2}
     91 {'two': 2}
     92 key
     93 one 1
     94 two 2
     95 one 1
     96 two 2
     97 1
     98 2
     99 one - 1
    100 two - 2
    101 {'one': 1, 'two': 2}
    102 {'two': 2}
    103 {'one': 1, 'two': 2}
    104 <class 'dict_items'>
    105 dict_items([('one', 1), ('two', 2)])
    106 <class 'dict_keys'>
    107 dict_keys(['one', 'two'])
    108 <class 'dict_values'>
    109 dict_values([1, 2])
    110 1
    111 {'eins': 'aaa', 'zewi': 'aaa', 'tree': 'aaa'}
    112 '''
  • 相关阅读:
    Vue Tinymce 在 Dialog 中不更新视图问题
    vue3再setup中动态加载组件
    ElementUI全局修改 eldialog 默认点击遮照为不关闭
    vue 数组 变化 ui未响应
    elementui 全局设置弹窗不点击遮罩层自动关闭
    Edge启动页 被串改无法设置
    SpringCloud学习笔记一
    分布式RPC框架Apache Dubbo
    SpringCloud学习笔记二
    springboot配置mybatisplus数据库加密启动报错
  • 原文地址:https://www.cnblogs.com/Cloudloong/p/9621085.html
Copyright © 2020-2023  润新知