学习笔记-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 '''
原文地址:https://www.cnblogs.com/Cloudloong/p/9621085.html