# -*- coding: utf-8 -*-'''
dict(字典)- 字典是一种组合数据,没有顺序的组合数据,数据以键值对的形式出现
'''#创建字典#1、创建空字典
d1 ={}print(type(d1))print(d1)
d2 =dict()print(type(d2))print(d2)#2、创建有值的字典,键值之间用:隔开,每一对键值用逗号隔开
d3 ={"one":1,"two":2,"three":3}print(type(d3))print(d3)#用dict创建有内容的字典
d4 =dict({"one":1,"two":2,"three":3})print(type(d4))print(d4)#用dict,利用关键字参数创建
d5 =dict(one =1, two =2, three =3)print(type(d5))print(d5)#利用tuple
d5 =dict([("one",1),("two",2),("three",3)])print(type(d5))print(d5)'''
1、字典的特征
a、字典是序列类型, 但是是无序序列,所以没有分片和索引
b、字典中的数据每个都有kv对,key必须是可哈希的值
2、常用操作
访问
赋值
删除
成员检测
遍历(python2和3中差异较大)
'''
d =dict({"one":1,"two":2,"three":3})print(d["one"])
d["one"]="eins"print(d)del d["one"]print(d)
d =dict({"one":1,"two":2,"three":3})if2in d:print("value")if"two"in d:print("key")if("two",2)in d:print("kv")for k in d:print(k, d[k])for k in d.keys():print(k, d[k])#只访问字典的值for v in d.values():print(v)#特殊常用用法for k, v in d.items():print(k,"--", v)'''
3、字典生成式
'''
d =dict({"one":1,"two":2,"three":3})#常规字典生成式
dd ={k:v for k, v in d.items()}print(dd)#带过滤条件
dd ={k:v for k, v in d.items()if v %2==0}print(dd)'''
4、字典相关函数
str(字典):返回字典的字符串格式
clear: 清空字典
items: 返回键值对组成的元组格式
keys: 返回字典的键组成的结构
values: 返回字典的值组成的结构
get: 根据指定的键返回值,没有要找的值时返回None,或者返回默认值
fromkeys:使用指定的序列作为键,使用一个值作为所有键的值
'''
dd =dict({"one":1,"two":2,"three":3})
i = dd.items()print(type(i))print(i)
k = dd.keys()print(k)
v = dd.values()print(v)#get:根据指定的键返回值,没有要找的值时返回None,或者返回默认值print(d.get(111))print(d.get(111,100))#fromkeys
l =["1","2","3"]
d =dict.fromkeys(l,"test")print(d)